原题链接:http://codeforces.com/problemset/problem/868/C

题意:有k个队伍参加比赛,比赛有n个预选的题目,有些队伍对已经事先知道了一些题目。问能不能选出若干个题,使没有队伍提前知道了半数以上的比赛题目。

思路:可以肯定的是,只要存在满足条件的选题方案,必定存在两道题,选上这两道之后也是满足条件的。因为k<=4,我们可以用二进制数记录题目的被提前知道的情况。所以,只要存在两个题目,对应的二进制数的异或结果为0,输出YES,否则输出NO。具体实现参看代码

AC代码:

#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int num[];
int main()
{
int n,k;
int m,p;
scanf("%d %d", &n, &k);
for(int i=;i<n;i++){
p=;
for(int j=;j<k;j++){
scanf("%d", &m);
p^=m;
p<<=;
}
//cout<<p<<endl;
num[p]++;
}
p=;
for(int i=;i<k;i++){
p=p^;
p<<=;
}
bool flag=;
//cout<<int(2^15)<<endl;
if(num[])
flag=;
for(int i=;i<=p;i++){
for(int j=;j<=p;j++){
if(!(i&j)&&(num[i]&&num[j])){
flag=;
break;
}
}
}
if(flag)
printf("YES\n");
else
printf("NO\n"); }

最新文章

  1. 使用 highchart 绘制柱状图的通用方法与接口
  2. __slots__ 属性绑定
  3. Gradle里配置jetty实现静态资源的热部署
  4. discuz X2.0教程]教你快速了解Discuz!程序文件功能,修改文件从此不用再求人
  5. java选项及系统属性
  6. PowerDesigner15的安装和破解
  7. UIImageView设置为圆形
  8. Redis客户端API操作 Jedis详解
  9. h5标签基础 meta标签
  10. LeetCode:60. Permutation Sequence,n全排列的第k个子列
  11. scala的多种集合的使用(1)之集合层级结构与分类
  12. 手把手教你从零开始搭建SpringBoot后端项目框架
  13. JS一些简单的问题
  14. ESET NOD32 Antivirus – 免费 3个月/ 3PC
  15. wsdl详解
  16. Recommend ways to overwrite hashCode() in java
  17. HibernateDaoSupport与JdbcDaoSupport
  18. C++解析(28):异常处理
  19. 隐藏C#的TabControl控件的选项卡TabPage
  20. php-excel 与 laravel-excel

热门文章

  1. Java ——泛型 序列化
  2. 【HANA系列】SAP HANA 2.0简介
  3. License开源许可证
  4. Kibana开启中文语言
  5. docker--docker仓库
  6. Mongodb-简单部署
  7. babel版本问题
  8. php批量POST修改
  9. navicat和Pycharm的连接
  10. Spark出现java.lang.stackoverflowerror的解决方法