[D3] 2005. 파스칼의 삼각형
출처
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5P0-h6Ak4DFAUq&
문제
크기가 N인 파스칼의 삼각형을 만들어야 한다.
파스칼의 삼각형이란 아래와 같은 규칙을 따른다.
-
첫 번째 줄은 항상 숫자 1이다.
-
두 번째 줄부터 각 숫자들은 자신의 왼쪽과 오른쪽 위의 숫자의 합으로 구성된다.
N이 4일 경우,
1
1 1
1 2 1
1 3 3 1
N을 입력 받아 크기 N인 파스칼의 삼각형을 출력하는 프로그램을 작성하시오.
제약 사항
- 파스칼의 삼각형의 크기 N은 1 이상 10 이하의 정수이다. (1 ≤ N ≤ 10)
입력
가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다.
각 테스트 케이스에는 N이 주어진다.
출력
각 줄은 '#t'로 시작하고, 다음 줄부터 파스칼의 삼각형을 출력한다.
삼각형 각 줄의 처음 숫자가 나오기 전까지의 빈 칸은 생략하고 숫자들 사이에는 한 칸의 빈칸을 출력한다.
(t는 테스트 케이스의 번호를 의미하며 1부터 시작한다.)
입력 | 출력 |
---|---|
1 4 |
#1 1 1 1 1 2 1 1 3 3 1 |
문제 해석
파스칼 함수의 정의를 알면 쉽게 푼다
문제 풀이
1
2
3
4
5
6
7
8
9
10
11
|
for count in range(int(input())):
N = int(input())
print("#{0}".format(count+1))
for N in range(1,N+1):
List =[1]*N # N 은 1부터 시작
if N >= 3:
for Pa_Num in range(1,len(List)-1):
List[Pa_Num] = Last_List[Pa_Num-1]+Last_List[Pa_Num] # 이전 리스트에서 왼쪽 , 오른쪽 더한다.
pass
Last_List = List # 마지막 결과 리스트를 Last_List로 저장
print(" ".join(map(str,List))) #
|
cs |
출처
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5P0-h6Ak4DFAUq&
'SWExpert > D3' 카테고리의 다른 글
[D3] 1215. [S/W 문제해결 기본] 3일차 - 회문1 (Python 파이썬 풀이) (0) | 2020.09.11 |
---|---|
[D3] 1213. [S/W 문제해결 기본] 3일차 - String (0) | 2020.09.10 |
1209. [S/W 문제해결 기본] 2일차 - Sum (Python 파이썬 풀이) (0) | 2020.09.04 |
[D3] 1206. [S/W 문제해결 기본] 1일차 - View (Python 파이썬 풀이) (0) | 2020.09.02 |
[D3] 3142. 영준이와 신비한 뿔의 숲(Python 파이썬 풀이) (0) | 2020.09.01 |