풀이
항상 사이클을 만들 수 있다.
첫 번째 행을 제외하고 ㄹ 모양으로 돌다가
마지막에 첫 번재 행으로 돌아와서 올라가주면 된다.
코드
#include <stdio.h>
int main() {
int tc;
for (scanf("%d", &tc); tc; tc--) {
int n, m, i, j;
scanf("%d %d", &n, &m);
puts("1");
for (i = 0; i < m; i++) printf("(%d,%d)\n", 0, i);
for (i = 1; i < n; i++) {
if (i % 2) for (j = m - 1; j; j--) printf("(%d,%d)\n", i, j);
else for (j = 1; j < m; j++) printf("(%d,%d)\n", i, j);
}
for (i = n - 1; i; i--) printf("(%d,%d)\n", i, 0);
}
return 0;
}
아무말
백준, 백준 온라인 저지, BOJ, Baekjoon Online Judge, C, C++, 씨, 씨쁠쁠, JAVA, algorithm, 자바, 알고리즘, 자료구조, 문제, 문제 풀이, 풀이