diff --git a/problems/terry/p_1.java b/problems/terry/p_1.java new file mode 100644 index 0000000..fdbaa67 --- /dev/null +++ b/problems/terry/p_1.java @@ -0,0 +1,39 @@ +package study.problems; + +import java.util.*; +import java.io.*; + +public class p_1 { + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + + //given + int n = Integer.parseInt(br.readLine()); + int[][] arr = new int[n][n]; + + + //when + // 배열 초기화 + for (int i = 0; i < n; i++) { + StringTokenizer st = new StringTokenizer(br.readLine()); + for (int j = 0; j < n; j++) { + arr[i][j] = Integer.parseInt(st.nextToken()); + } + } + + //then + int sum = 0; + + for (int i = 0; i < n; i++) { + sum += arr[i][i]; // '\' 대각선 요소 합 + if (i != (n - 1 - i)) // 겹치는 요소 제외 + sum += arr[i][n - 1 - i]; // '/' 대각선 요소 합 + } + + bw.write(String.valueOf(sum)); + + br.close(); + bw.close(); + } +} diff --git a/problems/terry/p_2.java b/problems/terry/p_2.java new file mode 100644 index 0000000..75a563f --- /dev/null +++ b/problems/terry/p_2.java @@ -0,0 +1,43 @@ +package study.problems; + +import java.util.*; +import java.io.*; + + +public class p_2 { + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + + + //given + int n, m; + StringTokenizer st = new StringTokenizer(br.readLine()); + n = Integer.parseInt(st.nextToken()); + m = Integer.parseInt(st.nextToken()); + int[][] arr = new int[n][m]; + + //when + // 배열 초기화 + for (int i = 0; i < n; i++) { + st = new StringTokenizer(br.readLine()); + for (int j = 0; j < m; j++) { + arr[i][j] = Integer.parseInt(st.nextToken()); // 배열 초기화 + } + } + + //then + int sum = 0; + for (int i = 0; i < n; i++) { + for (int j = 0; j < m; j++) { + if (i == 0 || i == (n - 1) || j == 0 || j == (m - 1)) // i 혹은 j가 첫번째, 마지막 인덱스면 더함 + sum += arr[i][j]; + } + } + + bw.write(String.valueOf(sum)); + + br.close(); + bw.close(); + } +} diff --git a/problems/terry/p_3.java b/problems/terry/p_3.java new file mode 100644 index 0000000..448f28a --- /dev/null +++ b/problems/terry/p_3.java @@ -0,0 +1,46 @@ +package study.problems; + +import java.util.*; +import java.io.*; + +public class p_3 { + public static void main(String[] args) throws IOException { + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out)); + + //given + int n, m; + StringTokenizer st = new StringTokenizer(br.readLine()); + n = Integer.parseInt(st.nextToken()); + m = Integer.parseInt(st.nextToken()); + int[][] arr = new int[n][m]; + + //when + //배열 초기화 + for (int i = 0; i < n; i++) { + st = new StringTokenizer(br.readLine()); + for (int j = 0; j < m; j++) { + arr[i][j] = Integer.parseInt(st.nextToken()); + } + } + + int[][] reverse = new int[m][n]; // 회전 배열 + for (int i = 0; i < n; i++) { + for (int j = 0; j < m; j++) { + reverse[j][n - 1 - i] = arr[i][j]; // 90도 회전 + } + } + + //then + for (int i = 0; i < m; i++) { + for (int j = 0; j < n; j++) { + bw.write(reverse[i][j] + " "); + } + bw.newLine(); + } + + br.close(); + bw.close(); + } +} +