模拟图形操作系统点击窗口的过程
在某图形操作系统中,有N个窗口,每个窗口都是一个两边与坐标轴分别平行的矩形区域,窗口的边界上的点也属于该窗口。窗口之间有层次的区别,在多于一个窗口的重叠的区域里,只会显示位于顶层的窗口里的内容。
当你点击屏幕上的一个点,你就会选择了处于被点击位置的最顶层窗口,并且这个窗口就会被移到所有窗口的最顶层,而剩余的窗口层次不变。如果你点击的位置不属于任何窗口,则系统会忽略你这次点击。
输入格式
第一行有两个整数N和M。
N按照从最下层到最顶层给出N个窗口的位置,每行包括四个非负整数,x1,x2,x3,x4,表示一对顶点坐标(x1,y1),(x2,y2)
接下来M行每行包含两个非负整数x,y,表示一次鼠标点击的坐标
输出格式
输出包括M行,每一行表示一次点击的结果,如果该次鼠标点击了一个窗口,则输出这个窗口的编号(窗口按照输入顺序从1编到N),如果没有,则输出“IGNORED”
#include<stdio.h>
//定义窗口的结构
struct window{
int winNumber;//窗户的编号
int x1,y1,x2,y2;//坐标
};
//定义鼠标的结构
struct point{
int x,y;//鼠标的坐标
};
int main(void){
int N,M;
int i,j,k;//循环变量
printf("请输入N和M:\n");
scanf("%d%d",&N