ET의 공부/C언어 연습문제[ 코드업 ]
[C언어 코드업 문제풀이] CodeUp 1475 : [기초-배열연습] 2차원 배열 지그재그 채우기 2-8
이티의 골방
2020. 5. 2. 14:21
코드업 1475번 2차우너 배열 지그재그 채우기 2-8 문제 풀이 해답입니다.
1. 문제 설명
다음과 같은 n*m 배열 구조를 출력해보자.
입력이 3 4인 경우 다음과 같이 출력한다.
12 7 6 1
11 8 5 2
10 9 4 3
입력이 4 5인 경우는 다음과 같이 출력한다.
17 16 9 8 1
18 15 10 7 2
19 14 11 6 3
20 13 12 5 4
입력이 n m인 경우의 2차원 배열을 출력해보자.
2. 입력
첫 번째 줄에 배열의 크기 n m이 입력된다.
[입력값의 정의역]
1<= n,m <= 100
3. 출력
n*m 크기의 배열을 설명과 같이 채워 출력한다.
4. 입력 예시
2 3
5. 출력 예시
5 4 1
6 3 2
6. 문제 풀이
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
|
#include "stdio.h"
int main(void)
{
int Arr[101][101] = {};
int n,m;
scanf("%d %d", &n, &m);
int x = 1;
int k = 1;
for(int i = m; i >= 1; i--){
if(k%2 == 1){
for(int j = 1; j<=n; j++){
Arr[j][i] = x;
x++;
}
}
else{
for(int j = n; j>=1; j--){
Arr[j][i] = x;
x++;
}
}
k++;
}
for(int i = 1; i <= n; i++){
for(int j = 1; j <= m ; j++){
printf("%d ",Arr[i][j]);
}
printf("\n");
}
return 0;
}
|