Problem
Problem URL : 동전 1
[1] Answer Code (18. 03. 21)
#include<iostream>
using namespace std;
int c[101]; // c is coin
int dp[10001];
int main(){
int n,k;
cin >> n >> k;
for(int i=1; i<=n; i++)
scanf("%d", c+i);
dp[0] = 1;
for(int i=1; i<=n; i++){
for(int j=c[i]; j<=k; j++){
dp[j] += dp[ j - c[i]];
}
}
cout << dp[k] << endl;
return 0;
}
Review
-
2년전에 풀었던 문제였다.
-
동전문제를 못풀다니 …
-
충격이였다 그런데 이번 기회를 통해 다시 익혔으니 그걸로 만족하자 !
[2] Answer Code (18. 09. 14)
#include<iostream>
using namespace std;
int c[101];
int dp[10001];
int main(){
int n,k;
cin >> n >> k;
for(int i=0; i<n; i++)
scanf("%d",c+i);
dp[0] = 1;
for(int i=0; i<n; i++){
for(int j=c[i]; j<=k; j++){
dp[j] += dp[j - c[i]];
}
}
cout << dp[k] << endl;
return 0;
}
Review
- 하이닉스 코테 준비용으로 다시 풀었다.