算法思路就是后来居上,后面的毯子会覆盖之前的毯子;
然后用二维数组表示整个会场,数组初始值全部都是-1,到时候就直接输出shuzu[x][y]就好了
下面是代码
#include<bits/stdc++.h>
#include
#include
using namespace std;
int shuzu[10001][10001]={0};
int main(){
int n=0;//有n张地毯
cin>>n;
int a,b,g,k;//a是x坐标,b是y坐标,g是长,k是宽
for(int i;i<=n;i++){
cin>>a>>b>>g>>k;
for(int w=a;w<=a+g;w++){
for(int e=b;e<=k+b;e++){
shuzu[w][e]=i;
}
}
}
int x,y;
cin>>x>>y;
cout<<shuzu[x][y];
return 0;
}