Skip to content

Commit 4b780b7

Browse files
authored
Merge pull request #239 from AlgorithmWithGod/ShinHeeEul
[20250313] BOJ / G3 / 소용돌이 이쁘게 출력하기 / 신희을
2 parents 8a24745 + d4a5086 commit 4b780b7

File tree

1 file changed

+80
-0
lines changed

1 file changed

+80
-0
lines changed
Lines changed: 80 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,80 @@
1+
import java.io.*;
2+
import java.util.*;
3+
4+
public class Main {
5+
6+
7+
static int[][] map;
8+
public static void main(String[] args) throws Exception {
9+
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
10+
11+
12+
int dir = 0;
13+
int[] di = {0, -1, 0, 1};
14+
int[] dj = {-1, 0, 1, 0};
15+
16+
17+
int i = 10000;
18+
int j = 10000;
19+
20+
21+
StringTokenizer st = new StringTokenizer(br.readLine());
22+
23+
int r1 = Integer.parseInt(st.nextToken()) + 5000;
24+
int c1 = Integer.parseInt(st.nextToken()) + 5000;
25+
int r2 = Integer.parseInt(st.nextToken()) + 5000;
26+
int c2 = Integer.parseInt(st.nextToken()) + 5000;
27+
28+
map = new int[r2 - r1 + 1][c2 - c1 + 1];
29+
int cnt = 0;
30+
int limit = 10001;
31+
boolean bool = true;
32+
33+
int max = 0;
34+
for(int a = 10001 * 10001 ; a > 0; a--) {
35+
36+
if(i >= r1 && i <= r2 && j >= c1 && j <= c2) {
37+
max = Math.max(a, max);
38+
map[i - r1][j - c1] = a;
39+
}
40+
cnt++;
41+
int nxti = i + di[dir];
42+
int nxtj = j + dj[dir];
43+
44+
if(cnt == limit) {
45+
cnt = 0;
46+
if(bool) {
47+
bool = false;
48+
limit--;
49+
} else {
50+
bool = true;
51+
}
52+
dir = (dir + 1) % 4;
53+
i += di[dir];
54+
j += dj[dir];
55+
continue;
56+
}
57+
58+
i = nxti;
59+
j = nxtj;
60+
}
61+
62+
StringBuilder sb = new StringBuilder();
63+
64+
int ans = 0;
65+
while(max > 0) {
66+
ans++;
67+
max /= 10;
68+
}
69+
70+
for(int a = 0; a < map.length; a++) {
71+
for(int b = 0; b < map[0].length; b++) {
72+
sb.append(String.format("%" + ans + "d", map[a][b])).append(" ");
73+
}
74+
sb.append("\n");
75+
}
76+
77+
System.out.println(sb);
78+
}
79+
80+
}

0 commit comments

Comments
 (0)