博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【set】bzoj3715 [PA2014]Lustra
阅读量:6874 次
发布时间:2019-06-26

本文共 1376 字,大约阅读时间需要 4 分钟。

对每种属性开一个set,只要某个厂家符合该属性的最值,就加进set,最后判断是否有某个厂家在4个set里都存在即可。

1 #include
2 #include
3 using namespace std; 4 int T,a[4][100001],EX[4],n; 5 set
S[4]; 6 typedef set
::iterator ITER; 7 bool check(const int &x) 8 { 9 for(int i=1;i<4;i++)10 if(S[i].find(x)==S[i].end())11 return 0;12 return 1;13 }14 int main()15 {16 scanf("%d",&T);17 for(;T>0;T--)18 {19 EX[0]=EX[2]=2147483647;20 EX[1]=EX[3]=-2147483647;21 scanf("%d",&n);22 for(int i=1;i<=n;i++)23 for(int j=0;j<4;j++)24 scanf("%d",&a[j][i]);25 for(int i=1;i<=n;i++) EX[0]=min(EX[0],a[0][i]);26 for(int i=1;i<=n;i++) EX[2]=min(EX[2],a[2][i]);27 for(int i=1;i<=n;i++) EX[1]=max(EX[1],a[1][i]);28 for(int i=1;i<=n;i++) EX[3]=max(EX[3],a[3][i]);29 for(int i=0;i<4;i++)30 for(int j=1;j<=n;j++)31 if(a[i][j]==EX[i]) S[i].insert(j);32 for(ITER it=S[0].begin();it!=S[0].end();it++)33 if(check(*it))34 {35 puts("TAK");36 goto OUT;37 }38 puts("NIE");39 OUT:for(int i=0;i<4;i++) S[i].clear();40 }41 return 0;42 }

 

转载于:https://www.cnblogs.com/autsky-jadek/p/4060326.html

你可能感兴趣的文章
如何解决vim乱码【转载】
查看>>
去除谷歌浏览器中的默认文本框样式
查看>>
oracle隐含参数的查看与修改
查看>>
rest_framework数据增删改查操作
查看>>
TDD个人实践体会(C#)三
查看>>
Android学习笔记:Android网络编程的理解和总结
查看>>
Linux.开关机&登出&用户管理
查看>>
游戏邮件系统
查看>>
Mac实用快捷键
查看>>
iptables的四表五链
查看>>
Vue第一天
查看>>
Google V8引擎编译记录
查看>>
VS2015新建asp.net core站点
查看>>
[Head First设计模式]山西面馆中的设计模式——装饰者模式
查看>>
Counting Kangaroos is Fun 求最少可见袋鼠数
查看>>
SQL Access Advisor in Oracle Database 10g
查看>>
又想起Solaris
查看>>
我与前端的二三事
查看>>
Django REST framework+Vue 打造生鲜电商项目(笔记三)
查看>>
51nod加农炮
查看>>