Submission #1100

#TimeUsernameProblemLanguageResultExecution timeMemory
1100leecs0503앱 (KOI13_app)C++98
21 / 21
872 ms79212 KiB
#include<stdio.h> //FILE *input=freopen("input.txt","r",stdin); #define MAX 20000001 int dp[MAX]; int a[101]; int b[101]; int main(){ int n,m,i,j,maxi=0,r,mini; scanf("%d%d",&n,&m); for(i=0;i<n;i++){ scanf("%d",&a[i]); if(maxi<a[i]) maxi=a[i]; } for(i=0;i<n;i++){ scanf("%d",&b[i]); } for(i=0;i<=m+maxi;i++){ dp[i]=-1; } dp[0]=0; for(i=0;i<n;i++){ for(j=m-1;j>=0;j--){ if(dp[j]==-1) continue; r=dp[j]+b[i]; if(dp[j+a[i]]>r||dp[j+a[i]]==-1){ dp[j+a[i]]=r; } } } mini=100001; for(j=m;j<m+maxi;j++){ if(dp[j]<mini&&dp[j]!=-1){ mini=dp[j]; } } printf("%d",mini); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...