문제
크기가 N인 파스칼의 삼각형을 만들어야 한다.
파스칼의 삼각형이란 아래와 같은 규칙을 따른다.
1. 첫 번째 줄은 항상 숫자 1이다.
2. 두 번째 줄부터 각 숫자들은 자신의 왼쪽과 오른쪽 위의 숫자의 합으로 구성된다.
N이 4일 경우,
N을 입력받아 크기 N인 파스칼의 삼각형을 출력하는 프로그램을 작성하시오.
풀이
- n*n 배열에 저장하여 푼다.
- (0,0)부터 시작하여 행이 i번째 일 때, 열(j)은 i번째 까지 존재한다.
- 각 행에서 0번 index 이거나 마지막 index(i번째)인 경우에는 1.
- 그 외의 i행 j열의 값은 i-1행의 j-1열값과 i-1행의 j열 값을 더한 값이다.
import java.io.*;
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int T = Integer.parseInt(br.readLine());
for(int tc=1; tc<=T; tc++) {
int n = Integer.parseInt(br.readLine());
int[][] arr = new int[n][n];
arr[0][0] = 1;
for(int i=1; i<n; i++) {
for(int j=0; j<=i; j++) {
if(j==0 || j==i) {
arr[i][j] = 1;
} else {
arr[i][j] = arr[i-1][j-1] + arr[i-1][j];
}
}
}
System.out.println("#"+tc);
for(int i=0; i<n; i++) {
for(int j=0; j<=i; j++) {
System.out.print(arr[i][j]+" ");
}
System.out.println();
}
}
}
}
'SWEA > D2' 카테고리의 다른 글
[SWEA] 1986. 지그재그 숫자 (0) | 2019.04.30 |
---|---|
[SWEA] 1989. 초심자의 회문 검사 (0) | 2019.04.30 |
[SWEA] 2001. 파리 퇴치 (0) | 2019.04.29 |
[SWEA] 2007. 패턴 마디의 길이 (0) | 2019.04.28 |
[SWEA] 1926. 간단한 369게임 (0) | 2019.04.28 |