Submission #262376

#TimeUsernameProblemLanguageResultExecution timeMemory
262376TadijaSebezSpiral (BOI16_spiral)C++11
27 / 100
1590 ms256 KiB
#include <bits/stdc++.h> using namespace std; #define ll long long const int mod=1e9+7; ll GetCell(int x,int y){ ll mx=max(abs(x),abs(y)); ll ans=(2*mx-1)*(2*mx-1)%mod; if(y==mx)ans+=mx-x+mx*2; else if(x==-mx)ans+=mx-y+mx*4; else if(y==-mx)ans+=x+mx+mx*6; else if(x==mx)ans+=y+mx; return ans%mod; } int main(){ int n,q; scanf("%i %i",&n,&q); while(q--){ int x1,y1,x2,y2; scanf("%i %i %i %i",&x1,&y1,&x2,&y2); ll ans=0; for(int x=x1;x<=x2;x++) for(int y=y1;y<=y2;y++) (ans+=GetCell(x,y))%=mod; printf("%lld\n",ans); } return 0; }

Compilation message (stderr)

spiral.cpp: In function 'int main()':
spiral.cpp:16:7: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   16 |  scanf("%i %i",&n,&q);
      |  ~~~~~^~~~~~~~~~~~~~~
spiral.cpp:19:8: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result]
   19 |   scanf("%i %i %i %i",&x1,&y1,&x2,&y2);
      |   ~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
#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...