2014-03 窗口
2020-03-12 18:45
33 查看
#include<iostream> #include<cstdio> using namespace std; struct win { int x1,y1; int x2,y2; }a[10]; int main() { int n,m,b[10]; cin>>n>>m; for(int i=0;i<n;i++) { b[i]=n-i-1; //储存编号顺序 //输入的第1个窗口压在最后一个即b[0]------储存编号为n-1-0 //输入的第2个窗口压在倒数第2个即b[1]------储存编号为n-1-1 //输入的第3个窗口压在倒数第3个即b[2]------储存编号为n-1-2 //输入的第i个窗口压在倒数第i个即b[i]------储存编号为n-1-i //输入的第n-1个窗口位于第一个即b[i]------储存编号为0 cin>>a[i].x1>>a[i].y1>>a[i].x2>>a[i].y2; } int x,y; for(int i=0;i<m;i++) { bool flag=true; cin>>x>>y; for(int j=0;j<n;j++) //按顺序遍历n个窗口 if(a[b[j]].x1<=x&&a[b[j]].x2>=x&&a[b[j]].y1<=y&&a[b[j]].y2>=y) { cout<<b[j]+1<<endl;//输出这个窗口的编号(窗口按照输入中的顺序从 1 编号到 N) flag=false; int v=b[j]; //调顺序,需要将点击的这个窗口置于最顶层 for(int k=j;k>0;k--)//即b[j]后的窗口都要向前移一个位置 b[k]=b[k-1]; b[0]=v; break;//跳出本层for循环,继续输入下一个点击坐标 } if(flag) cout<<"IGNORED"<<endl; } return 0; }
输入的第1个窗口压在最后一个即b[0]------储存编号为n-1
输入的第2个窗口压在最后一个即b[1]------储存编号为n-1-1
输入的第3个窗口压在最后一个即b[2]------储存编号为n-1-2
·
·
·
输入的第i个窗口压在最后一个即b[i]------储存编号为n-1-i
OJ在测试时是一个一个评分的
(for循环输入一个后输出结果)与(输入多个输出结果)在OJ的评分一样
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- CCF认证 2014-03 窗口
- 2014-03-02:窗口
- Android 内核 - 03 创建应用窗口 和 子窗口
- [DirectX开发学习日记]第一个DirectX窗口程序细节-(03)
- Java-数据库(SQL Server):第二天-12/03/2014
- 2014_03_18周二工作日志:特殊的输出函数sprintf
- error:2014_03_20周四工作日志:string类使用错误。
- 2014新生暑假个人排位赛03 B. 学姐的旋转图像
- 锋利的SQL2014:基于窗口的聚合计算
- 开源编译器学习笔记03(VC6 词法扫描器 ——动态内存先放一边)——2014_1_30
- 2014_03_19周三工作日志:
- 2014新生暑假个人排位赛03 D. 田田的账号
- ccf_2014_03_2(java100分)
- 编译原理学习笔记03——(唐僧团队智过平顶山—学从上而下语法树)——2014_1_16
- deepin2014 wubi 安装,启动时无法进入窗口模式,只能进入字符模式,的解决方法。
- 2014 第五届蓝桥杯 03 大衍数列(java)
- JS中级 - 03:文档宽高及窗口事件(选)
- 2014 3-2窗口
- 2014_03_18周二工作日志:
- 2014新生暑假个人排位赛03 C. 字符串