Submission #202283

#TimeUsernameProblemLanguageResultExecution timeMemory
202283errorgornKitchen (BOI19_kitchen)C++14
100 / 100
47 ms764 KiB
#include <cstdio> #include <cstring> #include <algorithm> using namespace std; int n,m,k; int food[305]; int chef[305]; int memo[90005]; int main(){ //freopen("input.txt","r",stdin); scanf("%d%d%d",&n,&m,&k); if (m<k){ printf("Impossible\n"); return 0; } for (int x=0;x<n;x++){ scanf("%d",&food[x]); if (food[x]<k){ printf("Impossible\n"); return 0; } } for (int x=0;x<m;x++){ scanf("%d",&chef[x]); } memset(memo,-1,sizeof(memo)); int total=0; //total hours to cook for (int x=0;x<n;x++) total+=food[x]; memo[0]=0; for (int x=0;x<m;x++){ for (int y=90005-chef[x];y>=0;y--){ if (memo[y]!=-1) memo[y+chef[x]]=max(memo[y+chef[x]],memo[y]+min(n,chef[x])); } } int req=n*k; for (int x=total;x<90005;x++){ if (memo[x]>=req){ printf("%d\n",x-total); return 0; } } printf("Impossible"); }

Compilation message (stderr)

kitchen.cpp: In function 'int main()':
kitchen.cpp:11:10: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
     scanf("%d%d%d",&n,&m,&k);
     ~~~~~^~~~~~~~~~~~~~~~~~~
kitchen.cpp:17:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d",&food[x]);
         ~~~~~^~~~~~~~~~~~~~~
kitchen.cpp:24:14: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
         scanf("%d",&chef[x]);
         ~~~~~^~~~~~~~~~~~~~~
#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...