728x90
반응형
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV5P0-h6Ak4DFAUq
#include<cstdio>
#include<cstring>
typedef long long ll;
using namespace std;
int main()
{
int arr[12] = {0,};
arr[0] = 1, arr[1] = 1;
int size,num;
scanf("%d",&size);
for(int i = 0; i < size; i++)
{
scanf("%d",&num);
printf("#%d\n",i+1);
for(int k = 0; k < num; k++){
for(int j = 0; j <= k; j++)
{
if(j == 0){
printf("1 ");
}else if(j == k){
printf("1");
}else{
arr[j] = arr[j-1] + arr[j];
printf("%d ",arr[j]);
}
}
printf("\n");
}
}
return 0;
}
내 방법 :
맨 앞과 뒤는 무조건 1로 고정이고, 그 사이는 위의 2개의 값을 더하면 되니까 1차원 배열로만 해결함.
다른 사람들 :
풀이법 보니까 2차원으로 한 사람이 많은데 무슨 차이인지 잘 모르겠다.
메모리 차이는 굉장히 많이 이득인데 TC가 10까지라 속도는 뭐가더 빠른지 잘..
웬만하면 다른사람들의 풀이를 받아들이는데 이번엔 1차원 배열이 더 나은것 같은..
==END
728x90
반응형
'컴퓨터 > 알고리즘' 카테고리의 다른 글
[SWEA] 1979 어디에 단어가 들어갈 수 있을까 (0) | 2021.01.28 |
---|---|
[SWEA] 1983 조교의 성적 매기기 (0) | 2021.01.27 |
[SWEA] 2001 파리 퇴치 (0) | 2021.01.26 |
[SWEA] 2056 연월일달력(야비한수법) (0) | 2021.01.22 |
[C++ 기초] 반복문으로 숫자 자릿수마다 자르기. (0) | 2021.01.19 |