SSAFY를 듣고 있으니 SWEA D5까지는 다 풀어보자! 하는 마음에 풀게 되었다. D1은 다 풀었고 너무 쉬워서 블로그에는 적지 않으려고 한다.
D2 중에서는 일부만 글을 적으려고 한다.
문제 풀이 (완전 탐색)
파스칼 삼각형은 왼쪽 위와 오른쪽 위의 값을 더한값이 되는 규칙을 갖고 있다.
파스칼 삼각형을 구하는 규칙은 여러개가 있으나 이 문제에서는 완전탐색을 통해서 풀었다.
2차원 배열을 사용하여 [i-1][j-1]과 [i-1][j]를 더하는 규칙을 그대로 사용하였다.
import java.util.*;
public class Solution {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int T = sc.nextInt();
for (int t = 1; t <= T; t++) {
int N = sc.nextInt();
int[][] tri = new int[N][N];
tri[0][0] = 1;
for (int i = 1; i < N; i++) {
tri[i][0] = 1;
for (int j = 1; j <= i - 1; j++) {
tri[i][j] = tri[i - 1][j - 1] + tri[i - 1][j];
}
tri[i][i] = 1;
}
System.out.println("#" + t);
for (int i = 0; i < N; i++) {
for (int j = 0; j < i + 1; j++) {
System.out.print(tri[i][j] + " ");
}
System.out.println("");
}
}
}
}