窗口
时间限制: | 1.0s |
内存限制: | 256.0MB |
1 #include <bits/stdc++.h> 2 using namespace std; 3 struct rect{ 4 int x1,y1,x2,y2,id; 5 bool isIn(int x,int y){ 6 return x >= x1 && x <= x2 && y >= y1 && y <= y2; 7 } 8 }R[20]; 9 int n,m; 10 int main(){ 11 int x,y; 12 while(~scanf("%d %d",&n,&m)){ 13 for(int i = 0; i < n; ++i){ 14 scanf("%d %d %d %d",&R[i].x1,&R[i].y1,&R[i].x2,&R[i].y2); 15 R[i].id = i + 1; 16 } 17 for(int i = 0; i < m; ++i){ 18 scanf("%d %d",&x,&y); 19 int idx = -1; 20 rect tmp; 21 for(int i = n-1; i >= 0; --i) 22 if(R[i].isIn(x,y)){idx = i;break;} 23 if(idx == -1) puts("IGNORED"); 24 else{ 25 tmp = R[idx]; 26 for(int i = idx; i + 1 < n; ++i) R[i] = R[i + 1]; 27 R[n-1] = tmp; 28 printf("%d\n",R[n-1].id); 29 } 30 } 31 } 32 return 0; 33 }
原文:http://www.cnblogs.com/crackpotisback/p/4360769.html