Submission #294244

#TimeUsernameProblemLanguageResultExecution timeMemory
294244LawlietNuclearia (CEOI15_nuclearia)C++17
0 / 100
322 ms62200 KiB
#include <bits/stdc++.h> using namespace std; typedef long long int lli; int n, m, k, q; vector<lli> s; vector<lli> indep, fact; int main() { scanf("%d %d %d",&n,&m,&k); s.resize( n + 2 , 0 ); indep.resize( n + 2 , 0 ); fact.resize( n + 2 , 0 ); for(int i = 1 ; i <= k ; i++) { lli x, a, b; scanf("%lld %*d %lld %lld",&x,&a,&b); lli L = x - a/b; L = max( L , 0LL ); lli R = x + a/b; R = min( R , n*1LL ); lli valLeft = a - b*x; fact[L] += b; fact[x + 1] -= b; indep[L] += valLeft; indep[x + 1] -= valLeft; lli valRight = a + b*x; fact[x + 1] -= b; fact[R + 1] += b; indep[x + 1] += valRight; indep[R + 1] -= valRight; } lli sumFact = 0; lli sumIndep = 0; for(int i = 1 ; i <= n ; i++) { sumFact += fact[i]; sumIndep += indep[i]; s[i] = s[i - 1] + sumIndep; s[i] += sumFact*i; } scanf("%d",&q); while( q-- ) { int xa, xb; scanf("%d %*d %d %*d",&xa,&xb); lli area = xb - xa + 1; lli sum = s[xb] - s[xa - 1]; lli ans = sum/area; if( (sum%area)*2 >= area ) ans++; printf("%lld\n",ans); } }

Compilation message (stderr)

nuclearia.cpp: In function 'int main()':
nuclearia.cpp:13:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   13 |  scanf("%d %d %d",&n,&m,&k);
      |  ~~~~~^~~~~~~~~~~~~~~~~~~~~
nuclearia.cpp:21:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   21 |   scanf("%lld %*d %lld %lld",&x,&a,&b);
      |   ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
nuclearia.cpp:52:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   52 |  scanf("%d",&q);
      |  ~~~~~^~~~~~~~~
nuclearia.cpp:57:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   57 |   scanf("%d %*d %d %*d",&xa,&xb);
      |   ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~
#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...
#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...