C로 구현한 1098번 설탕과자 뽑기 문제 풀이입니다.
https://codeup.kr/problem.php?id=1098
#include <stdio.h>
int main() {
int h,w,n, l, d, x, y; //세로, 가로, 막대수, 막대길이, 방향, 좌표
scanf("%d %d", &h, &w);
int p[101][101] = {0, };
scanf("%d", &n);
for(int i=1; i<=n; i++) {
scanf("%d %d %d %d", &l, &d, &x, &y);
int count = 0;
for(int j=1; j<=l; j++) {
if(d == 0) { //가로
p[x][y+count] = 1;
count++;
} else {
p[x+count][y] = 1;
count++;
}
}
}
for(int i=1; i<=h; i++) {
for(int j=1; j<=w; j++) {
printf("%d ", p[i][j]);
}
printf("\n");
}
}
격자판의 세로(h), 가로(w)를 입력받고 놓을 수 있는 막대의 개수(n) 또한 입력받는다.
첫번째 반복문 내에서는 입력받은 막대의 개수만큼 막대의 길이(l), 방향(d), 좌표(x, y)를 입력받고
방향이 가로일 경우 y값에 변수 count를 더한 좌표에 1을 할당한다. count의 경우 초기값은 0이며 수행 후 1씩 증가한다.
반대로 세로일 경우 x값에 변수 count를 더한 좌표에 1을 할당한다.
'코드업(CodeUp) 풀이 > C언어 기초 100제' 카테고리의 다른 글
코드업[CodeUp] (C) 1099번 풀이 (0) | 2021.08.23 |
---|---|
코드업[CodeUp] (C) 1097번 풀이 (0) | 2021.08.23 |
코드업[CodeUp] (C) 1096번 풀이 (0) | 2021.08.23 |
코드업[CodeUp] (C) 1095번 풀이 (0) | 2021.08.23 |
코드업[CodeUp] (C) 1094번 풀이 (0) | 2021.08.23 |