Submission #134510

#TimeUsernameProblemLanguageResultExecution timeMemory
134510degeloBrunhilda’s Birthday (BOI13_brunhilda)C++17
2.22 / 100
1093 ms1144 KiB
#include<bits/stdc++.h> #define inf 1000000000 #define maxn 20000 using namespace std; long long int prod=1; int m,q; int p[maxn]; int dp[maxn]; int DP(int k){ if(dp[k]!=0) return dp[k]; if(k==0) return 0; if(k<p[m-1]) return 1; int resp=inf; for(int i=0;i<m;i++){ if(k%p[i]==0) continue; resp=min(resp,DP((k/p[i])*p[i])+1); } return resp; } int main(){ scanf("%d %d",&m,&q); for(int i=0;i<m;i++){ scanf("%d",&p[i]); } for(int i=0;i<m;i++){ prod*=p[i]; if(prod>maxn) break; } for(int i=0;i<q;i++){ int n; scanf("%d",&n); if(n>=prod) printf("oo\n"); else printf("%d\n",DP(n)); } }

Compilation message (stderr)

brunhilda.cpp: In function 'int main()':
brunhilda.cpp:21:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d %d",&m,&q); 
  ~~~~~^~~~~~~~~~~~~~~
brunhilda.cpp:23:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d",&p[i]);
   ~~~~~^~~~~~~~~~~~
brunhilda.cpp:31:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d",&n);
   ~~~~~^~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...