반응형
문제
다음과 같은 n * m 배열 구조를 출력해보자.
입력이 3 4 인 경우 다음과 같이 출력한다.
1 2 4 7
3 5 8 10
6 9 11 12
입력이 4 5 인 경우 다음과 같이 출력한다.
1 2 4 7 11
3 5 8 12 15
6 9 13 16 18
10 14 17 19 20
입력이 n m인 경우의 2차원 배열을 출력해보자.
입력
첫 번째 줄에 배열의 크기 n m이 입력된다.
[입력값의 정의역]
1 <= n, m <= 100
출력
n * m 크기의 배열을 설명과 같이 채워 출력한다.
예제 입력
2 3
예제 출력
1 2 4
3 5 6
풀이
#include <stdio.h>
int main()
{
int arr[100][100];
int n, m, num = 0;
scanf("%d %d", &n, &m);
for (int i = 0; i < (n * m); i++)
{
for (int j = 0; j < n; j++)
{
int k = i - j;
if (k >= 0 && k < m)
arr[j][k] = ++num;
}
}
for (int i = 0; i < n; i++)
{
for (int j = 0; j < m; j++)
{
printf("%d ", arr[i][j]);
}
printf("\n");
}
}
반응형