Submission #60813

#TimeUsernameProblemLanguageResultExecution timeMemory
60813RezwanArefin01Brunhilda’s Birthday (BOI13_brunhilda)C++17
93.17 / 100
605 ms89284 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; typedef pair<int, int> ii; const int N = 1e7 + 1; const int M = 1e5 + 1; int m, q, d[N], p, dp[N]; int main(int argc, char const *argv[]) { scanf("%d %d", &m, &q); ll prod = 1; bool flag = 0; for(int i = 0; i < m; i++) { scanf("%d", &p); if(prod * p <= 1e7) prod *= p; else flag = 1; for(int j = 0; j < N; j += p) d[j] = p; } int prv = 0; for(int i = 1; i < N; i++) { while(prv < i) { if(!d[prv] || prv + d[prv] <= i) ++prv; else break; } if(prv == i) break; dp[i] = dp[prv] + 1; } while(q--) { int x; scanf("%d", &x); if(x >= (flag ? 1e7 : prod)) puts("oo"); else { printf("%d\n", dp[x]); } } }

Compilation message (stderr)

brunhilda.cpp: In function 'int main(int, const char**)':
brunhilda.cpp:12: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:15:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d", &p); 
   ~~~~~^~~~~~~~~~
brunhilda.cpp:30:15: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   int x; scanf("%d", &x);
          ~~~~~^~~~~~~~~~
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...