这样哪里错了?
查看原帖
这样哪里错了?
578156
NameSetter楼主2021/10/17 10:53

4AC,4RE,1WA,1MLE
纯模拟,不会用高级的算法。。。

#include<cstdio>
#include<cstring>
int main(){
	//int floor[100001][100001];
	//memset(floor,-1,sizeof(floor));
	int n,/*a,b,g,k,*/x,y,maxx=0,maxy=0;
	scanf("%d",&n);
	int input[n+1][5];
	for(int i=1;i<=n;i++){
		for(int j=1;j<=4;j++)
			scanf("%d",&input[i][j]);
		if(input[i][1]+input[i][3]>maxx)maxx=input[i][1]+input[i][3];
		if(input[i][2]+input[i][4]>maxy)maxy=input[i][2]+input[i][4];
	}
	short floor[maxx+1][maxy+1];
	memset(floor,-1,sizeof(floor));
	for(int i=1;i<=n;i++){
		//scanf("%d %d %d %d",&a,&b,&g,&k);
		for(int m=input[i][1];m<=input[i][3];m++)
			for(int p=input[i][2];p<=input[i][4];p++)
				floor[m][p]=i;
	}
	scanf("%d %d",&x,&y);
	printf("%d",floor[x][y]);
	return 0;
}
2021/10/17 10:53
加载中...