Submission #262376

# Submission time Handle Problem Language Result Execution time Memory
262376 2020-08-12T18:01:46 Z TadijaSebez Spiral (BOI16_spiral) C++11
27 / 100
1500 ms 256 KB
#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

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 time Memory Grader output
1 Correct 446 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 256 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 446 ms 256 KB Output is correct
2 Execution timed out 1570 ms 256 KB Time limit exceeded
# Verdict Execution time Memory Grader output
1 Execution timed out 1590 ms 256 KB Time limit exceeded
# Verdict Execution time Memory Grader output
1 Correct 446 ms 256 KB Output is correct
2 Correct 1 ms 256 KB Output is correct
3 Execution timed out 1570 ms 256 KB Time limit exceeded