728x90
▶문제 : 파스칼 삼각형 (codeup.kr)
파스칼 삼각형
배열의 값이 커지므로 배열은 long long 으로 선언해야 합니다. nCr의 점화식의 원리도 이 삼각형의 원리와 똑같습니다. nCr = n-1Cr + n-1Cr-1
codeup.kr
▶코드 작성
#include <stdio.h>
int main()
{
unsigned long long arr[51][51];
int n;
scanf("%d", &n);
for (int i = 1; i <= n; i++)
{
for (int j = 1; j <= i; j++)
{
if (j == 1 || j == i)//양쪽 끝은 항상 1
{
arr[i][j] = 1;
printf("1 ");
}
else
{
arr[i][j] = arr[i - 1][j - 1] + arr[i - 1][j];//자신의 위 숫자와 그 왼쪽 숫자의 합
printf("%llu ", arr[i][j]);
}
}
printf("\n");
}
return 0;
}
▶해석
이중 반복문으로 값을 구했고, j==1이거나 j==i일 때가 양쪽 끝 값이므로 항상 1이다. 나머지는 삼각형을 보면 구하려는 수는 그 위 숫자와 그 왼쪽 숫자를 합한 값이 나오므로 계산식을 하였다.
728x90
'코드업(codeup) > C' 카테고리의 다른 글
| 코드업(codeup) 1705 : 369 게임 C언어 (0) | 2021.12.31 |
|---|---|
| 코드업(codeup) 3702 : 파스칼의 삼각형 2 C언어 (0) | 2021.12.29 |
| 코드업(codeup) 3020 : 기억력 테스트 4 C언어 (0) | 2021.12.26 |
| 코드업(codeup) 3017 : 정렬 기준 C언어 (0) | 2021.12.25 |
| 코드업(codeup) 3014 : 정렬을 빠르게! C언어 (0) | 2021.12.12 |
댓글