728x90
반응형
문제 풀기 전 생각 :
/*
먼저 14층까지 각 층마다 14개의 집이 있습니다.
입주 조건에 맞춰 모든 집에 필요한 사람 수를 전부 배열에 저장해두고
입력되는 숫자에 맞춰 인덱싱해 출력하도록 했다.
*/
#include <iostream>
using namespace std;
int main() {
int n[15][15]={ 0, };
int t,x,y;
for(int i=0 ; i<15 ; i++){
n[0][i] = i+1;
}
for(int i=1 ; i<15 ; i++){
for(int j=0 ; j<15 ; j++){
for(int k=0 ; k<j+1 ; k++){
n[i][j] += n[i-1][k];
}
}
}
cin >> t;
for(int i=0 ; i<t ; i++){
cin >> x >> y;
cout << n[x][y-1] << endl;
}
return 0;
}
https://www.acmicpc.net/problem/2775
풀 때 어려웠던 점 또는 느낀점 :
입주 조건을 파악하는 것 말고는 아주 무난한 문제이다.
아니 근데 뭔 입주조건이 되게 이상하다.
흡사 다단계인듯
개선방안 :
#include <cstdio>
int main() {
int test;
scanf("%d", &test);
while (test--) {
int k, n;
scanf("%d%d", &k, &n);
int arr[15][15];
for (int i = 1; i <= n; i++)
arr[0][i] = i;
for (int i = 0; i < k; i++) {
int sum = 0;
for (int j = 1; j <= n; j++) {
sum += arr[i][j];
arr[i + 1][j] = sum;
}
}
printf("%d\n", arr[k][n]);
}
return 0;
}
위의 코드에서 와일문을 다루는 방법이 인상 깊었다
못할것도 없지만 내가 사용하던 방법이 아니어서 새롭게 다가온듯 하다
다음에 써봐야징
문제 접근법 자체는 비슷한듯 하다
728x90
반응형
'Problem Solving' 카테고리의 다른 글
[C++] [leetCode 258] Add Digits (pps 4-6) (1) | 2021.07.18 |
---|---|
[C++] [LeetCode 342] Power of Four (ops 4-5) (0) | 2021.07.17 |
[C++] [백준 3052] 나머지 (pps 4-3) (0) | 2021.07.17 |
[C++] [백준 10757] 큰 수 A+B (pps 4-2) (0) | 2021.07.17 |
[C++] [백준 2953] 나는 요리사다 (pps 4-1) (2) | 2021.07.17 |
댓글