diff --git "a/\354\204\234\353\221\220\353\202\230/SWEA/D2/1954. \353\213\254\355\214\275\354\235\264 \354\210\253\354\236\220.java" "b/\354\204\234\353\221\220\353\202\230/SWEA/D2/1954. \353\213\254\355\214\275\354\235\264 \354\210\253\354\236\220.java" new file mode 100644 index 00000000..dbdb305e --- /dev/null +++ "b/\354\204\234\353\221\220\353\202\230/SWEA/D2/1954. \353\213\254\355\214\275\354\235\264 \354\210\253\354\236\220.java" @@ -0,0 +1,61 @@ +import java.io.*; + +class Solution { + + static int[][] drcs = { { 0, 1 }, { 1, 0 }, { 0, -1 }, { -1, 0 } }; + + public static void main(String args[]) throws Exception { + + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + int T; + T = Integer.parseInt(br.readLine()); + + for (int test_case = 1; test_case <= T; test_case++) { + int n = Integer.parseInt(br.readLine()); + int dir = 0; + + int[][] arr = new int[n][n]; + boolean[][] visited = new boolean[n][n]; + + for (int i = 0; i < n; i++) { + for (int j = 0; j < n; j++) { + arr[i] = new int[n]; + } + } + + for (int i = 0; i < n; i++) { + for (int j = 0; j < n; j++) { + visited[i] = new boolean[n]; + } + } + + int r = 0; + int c = 0; + + for (int i = 1; i <= n * n; i++) { + arr[r][c] = i; + visited[r][c] = true; + + int nr = r + drcs[dir][0]; + int nc = c + drcs[dir][1]; + + if (0 > nr || nr >= n || 0 > nc || nc >= n || visited[nr][nc]) { + dir = (dir + 1) % 4; + nr = r + drcs[dir][0]; + nc = c + drcs[dir][1]; + } + r = nr; + c = nc; + } + + System.out.println("#" + test_case); + + for (int i = 0; i < n; i++) { + for (int j = 0; j < n; j++) { + System.out.print(arr[i][j] + " "); + } + System.out.println(); + } + } + } +} diff --git "a/\354\204\234\353\221\220\353\202\230/SWEA/D2/1961.\354\210\253\354\236\220 \353\260\260\354\227\264 \355\232\214\354\240\204.java" "b/\354\204\234\353\221\220\353\202\230/SWEA/D2/1961.\354\210\253\354\236\220 \353\260\260\354\227\264 \355\232\214\354\240\204.java" new file mode 100644 index 00000000..79cd2b0c --- /dev/null +++ "b/\354\204\234\353\221\220\353\202\230/SWEA/D2/1961.\354\210\253\354\236\220 \353\260\260\354\227\264 \355\232\214\354\240\204.java" @@ -0,0 +1,53 @@ +import java.io.*; + +class Solution { + static int n; + static char[][] arr; + + public static char[][] rotate() { + char[][] temp = new char[n][n]; + + for (int i = 0; i < n; i++) { + for (int j = 0; j < n; j++) { + temp[i][j] = arr[n - j - 1][i]; + } + } + return temp; + } + + public static void main(String args[]) throws Exception { + + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + int T; + T = Integer.parseInt(br.readLine()); + + for (int test_case = 1; test_case <= T; test_case++) { + n = Integer.parseInt(br.readLine()); + arr = new char[n][n]; + + for (int i = 0; i < n; i++) { + String[] temp = br.readLine().split(" "); + for (int j = 0; j < n; j++) { + arr[i][j] = temp[j].charAt(0); + } + } + String[][] result = new String[n][3]; + + for (int k = 0; k < 3; k++) { + arr = rotate(); + for (int i = 0; i < n; i++) { + String temp = ""; + for (int j = 0; j < n; j++) { + temp += arr[i][j]; + } + result[i][k] = temp; + } + } + System.out.println("#" + test_case); + for (int i = 0; i < n; i++) { + System.out.println(result[i][0] + " " + result[i][1] + " " + result[i][2]); + } + + } + } +}