1 solutions
-
0
C :
#include<stdio.h> #include<string.h> int dp[100000]; int min(int a,int b){return a<b?a:b;} int main() { int n,c,t,i,j; while(scanf("%d%d",&n,&t),n,t) { for(i=0;i<=t;++i) dp[i]=65540; dp[0]=0; for(i=0;i<n;++i) { scanf("%d",&c); for(j=c;j<=t;++j) dp[j]=min(dp[j],dp[j-c]+1); } printf("%d\n",dp[t]); } return 0; } /************************************************************** Problem: 21811 User: 12网工_王俊杰 Language: C Result: 正确 Time:119 ms Memory:1480 kb ****************************************************************/
- 1
Information
- ID
- 18394
- Time
- 1000ms
- Memory
- 128MiB
- Difficulty
- (None)
- Tags
- # Submissions
- 0
- Accepted
- 0
- Uploaded By