P1789求助,k不是0都没有结果
查看原帖
P1789求助,k不是0都没有结果
560814
anaoai楼主2021/9/23 20:35

5 1 0 3 3能过 5 1 1 3 3 3 3直接炸 求助,数组也+10了

#include <bits/stdc++.h>
using namespace std;
int main(){
	int n,m,k;
	cin>>n>>m>>k;
	int basem[m+10];
	int basem2[m+10];
	int basek[k+10];
	int basek2[k+10];
	int cube[n+10][n+10];
	for(int i=0;i<=n+10;i++)
		for(int j=0;j<=n+10;j++)
			cube[i][j]=0;
	memset(basem,0,sizeof(basem));
	memset(basem2,0,sizeof(basem2));
	memset(basek,0,sizeof(basek));
	memset(basek2,0,sizeof(basek2));
	for(int i=1;i<=m;i++)
		cin>>basem[i]>>basem2[i];
	for(int i=1;i<=k;i++)
		cin>>basek[i]>>basek2[i];
	for(int i=1;i<=m;i++){
		cube[basem[i]][basem2[i]]=1;
		cube[basem[i]+1][basem2[i]+1]=1;
		cube[basem[i]+1][basem2[i]-1]=1;
		cube[basem[i]-1][basem2[i]-1]=1;
		cube[basem[i]-1][basem2[i]+1]=1;
		cube[basem[i]+1][basem2[i]]=1;
		cube[basem[i]+2][basem2[i]]=1;
		cube[basem[i]][basem2[i]+1]=1;
		cube[basem[i]][basem2[i]+2]=1;
		cube[basem[i]-1][basem2[i]]=1;
		cube[basem[i]-2][basem2[i]]=1;
		cube[basem[i]][basem2[i]-1]=1;
		cube[basem[i]][basem2[i]-2]=1;
	}
	for(int i=1;i<=k;i++)
		for(int j=basek[i]-2;j<=basek[i]+2;j++)
			for(int k=basek2[i]-2;j<=basek2[i]+2;k++)
				cube[j][k]=1;
	int total=0;
	for(int i=1;i<=n;i++)
		for(int j=1;j<=n;j++)
			if(cube[i][j]==0){
				total++;
			}
		//for(int i=1;i<=n;i++)
			//for(int j=1;j<=n;j++)
			//cout<<cube[i][j]<<' ';//DEBUGER
			cout<<total;
			return 0;
}
2021/9/23 20:35
加载中...