Submission #503501


Source Code Expand

#include <cstdio>
#include <cstdlib>
#include <vector>
#include <algorithm>
using namespace std;
int N,K,X[10],Y[10];
int board[2001][2001];
void compress(int *x,vector<int> &v) {
	for(int i=0;i<K;i++) {
		v.push_back(x[i]);
		if(x[i]>1) v.push_back(x[i]-1);
		if(x[i]<N) v.push_back(x[i]+1);
	}
	sort(v.begin(),v.end());
	v.erase(unique(v.begin(),v.end()),v.end());
}
int main() {
	scanf("%d %d",&N,&K);
	for(int i=0;i<K;i++) {
		scanf("%d %d",&Y[i],&X[i]);
	}
	vector<int> vx,vy;
	compress(X,vx);
	compress(Y,vy);
	for(int i=1;i<=N;i++) {
		for(int j=1;j<=N;j++) {
			if((i+j)&1) board[i][j]=-1; else board[i][j]=1;
		}
	}
	for(int i=0;i<K;i++) {
		board[Y[i]][X[i]]*=-1;
	}
	for(int i=1;i<=N;i++) {
		for(int j=2;j<=N;j++) {
			board[i][j]+=board[i][j-1];
		}
	}
	for(int i=1;i<=N;i++) {
		for(int j=2;j<=N;j++) {
			board[j][i]+=board[j-1][i];
		}
	}
	int ans=0;
	for(int i=0;i<vx.size();i++) {
		for(int j=0;j<vy.size();j++) {
			for(int k=i;k<vx.size();k++) {
				for(int l=j;l<vy.size();l++) {
					int x1=vx[i],y1=vy[j],x2=vx[k],y2=vy[l];
					int sum=board[y2][x2];
					sum-=board[y1-1][x2];
					sum-=board[y2][x1-1];
					sum+=board[y1-1][x1-1];
					ans=max(ans,abs(sum));
				}
			}
		}
	}
	printf("%d\n",ans);
}

Submission Info

Submission Time
Task E - マス目色ぬり
User Div33554432
Language C++ (GCC 4.9.2)
Score 100
Code Size 1284 Byte
Status AC
Exec Time 140 ms
Memory 16412 KiB

Compile Error

./Main.cpp: In function ‘int main()’:
./Main.cpp:18:22: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
  scanf("%d %d",&N,&K);
                      ^
./Main.cpp:20:29: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
   scanf("%d %d",&Y[i],&X[i]);
                             ^

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 100 / 100
Status
AC × 3
AC × 27
Set Name Test Cases
Sample example_0.txt, example_1.txt, example_2.txt
All all_black_0.txt, all_black_1.txt, all_edge_0.txt, all_edge_1.txt, all_edge_2.txt, all_white_0.txt, all_white_1.txt, corner_0.txt, example_0.txt, example_1.txt, example_2.txt, maxrand_0.txt, maxrand_1.txt, maxrand_2.txt, maxrand_3.txt, maxrand_4.txt, random_0.txt, random_1.txt, random_2.txt, random_3.txt, random_4.txt, smallrand_0.txt, smallrand_1.txt, smallrand_2.txt, example_0.txt, example_1.txt, example_2.txt
Case Name Status Exec Time Memory
all_black_0.txt AC 66 ms 9132 KiB
all_black_1.txt AC 86 ms 11684 KiB
all_edge_0.txt AC 36 ms 4380 KiB
all_edge_1.txt AC 92 ms 12580 KiB
all_edge_2.txt AC 29 ms 2724 KiB
all_white_0.txt AC 26 ms 1116 KiB
all_white_1.txt AC 128 ms 15908 KiB
corner_0.txt AC 24 ms 800 KiB
example_0.txt AC 26 ms 920 KiB
example_1.txt AC 26 ms 916 KiB
example_2.txt AC 26 ms 912 KiB
maxrand_0.txt AC 136 ms 16412 KiB
maxrand_1.txt AC 134 ms 16408 KiB
maxrand_2.txt AC 135 ms 16404 KiB
maxrand_3.txt AC 136 ms 16412 KiB
maxrand_4.txt AC 140 ms 16352 KiB
random_0.txt AC 77 ms 10660 KiB
random_1.txt AC 30 ms 2340 KiB
random_2.txt AC 117 ms 14872 KiB
random_3.txt AC 87 ms 11928 KiB
random_4.txt AC 28 ms 1560 KiB
smallrand_0.txt AC 26 ms 920 KiB
smallrand_1.txt AC 26 ms 928 KiB
smallrand_2.txt AC 26 ms 924 KiB