题意简述:有\(N(2<=N<=400)\)只火鸡, 编号为1到N , 有\(M(1<=M<=10^5)\)个人, 每人指定了两只火鸡\((x,y)\):
1.若\(x,y\)都活着, 那么这个人将会等概率地随机吃掉一只
2.若\(x,y\)恰好活着一只, 那么这个人将会吃掉活着的这只
3.若\(x,y\)都已经死亡, 那么只好什么都不做
求有多少个\((i,j)(1<=i<j<=N)\)满足在最终时刻第\(i\)只火鸡和第\(j\)只火鸡都还活着

又是一道比较巧妙的题。

我们可以考虑反着来考虑,假设在当前时刻要使第\(i\)只鸡活着应该怎么办。那我们考虑要使这只鸡活着,一定会杀掉别的鸡,那么我们对于每只鸡记录一个集合,表示要使\(i\)活着,要杀的鸡有哪些。然后如果存在一个人要杀的鸡已经被杀完了或只剩\(i\),那么第\(i\)只鸡必死,因为每只鸡只能杀一次,我们又是从后往前考虑,那么在原序列中后面的就无法替\(i\)去死就先被杀了。

最后因为一只鸡不能死两次,我们再对所有的能活下来的鸡进行集合判交就可以啦。

#include<cstdio>
#include<bitset>
using namespace std;
const int N=410,M=1e5+10;
int n,m,ans;
int x[M],y[M],die[N];
bitset<N> s[N];
int main(){scanf("%d%d",&n,&m);for(int i=1;i<=m;i++)scanf("%d%d",&x[i],&y[i]);for(int i=1;i<=n;i++){s[i][i]=1;for(int j=m;j;j--)if(s[i][x[j]]&&s[i][y[j]]){die[i]=1;break;}else if(s[i][x[j]])s[i][y[j]]=1;else if(s[i][y[j]])s[i][x[j]]=1;}for(int i=1;i<=n;i++)if(!die[i])for(int j=i+1;j<=n;j++)if(!die[j]&&(s[i]&s[j]).none())++ans;printf("%d\n",ans);
}

转载于:https://www.cnblogs.com/yxc2003/p/10747233.html

AGC016E Poor Turkeys相关推荐

  1. [agc016e]poor turkeys

    题意: 有n只鸡,开始都活着.要按时间吃m次鸡,每次选两只,若两只都活着则随便吃一个,若只有一只活着就吃活的那个,如果死光了就不吃.问最后可能有多少对鸡同时存活(不考虑顺序) $2\leq n\leq ...

  2. 2017国家集训队作业[agc016e]Poor Turkey

    2017国家集训队作业[agc016e]Poor Turkey 题意: 一开始有\(N\)只鸡是活着的,有\(M\)个时刻,每个时刻有两个数\(X_i,Y_i\),表示在第\(i\)个时刻在\(X_i ...

  3. LeetCode 458. Poor Pigs--智力题「小白鼠试毒」--C++,Python解法

    题目地址:Poor Pigs - LeetCode There are 1000 buckets, one and only one of them is poisonous, while the r ...

  4. 关于过拟合、局部最小值、以及Poor Generalization的思考

    Poor Generalization 这可能是实际中遇到的最多问题. 比如FC网络为什么效果比CNN差那么多啊,是不是陷入局部最小值啊?是不是过拟合啊?是不是欠拟合啊? 在操场跑步的时候,又从SVM ...

  5. Poor Man's BERT: 更小更快的Transformer模型

    文 | sliderSun 源 | 知乎 NLP模型的大小不断增加,随之而来的是可用性降低,TinyBERT,MobileBERT,和DistilBERT都提出了一个独特的知识蒸馏框架,其共同目标是在 ...

  6. Poor God Water【矩阵快速幂】

    Poor God Water 时间限制: 1 Sec 内存限制: 128 MB 提交: 102 解决: 50 [提交] [状态] [命题人:admin] 题目描述 God Water likes to ...

  7. #读书笔记#《富爸爸窮爸爸》 | Rich Dad Poor Dad 罗伯特.清崎 Robert Kiyosaki

    <士兵突击>里面袁朗说:"有很多人天天都在焦虑,怕没得到,怕寂寞,我喜欢不焦虑的人". 有很多人天天都在焦虑. 那么,为什么大城市的年轻人明明拥有更前沿的信息和更多的资 ...

  8. 穷爸爸 富爸爸(Rich dad , Poor dad ) 读书笔记(第一课lesson 1)

    1. 穷人为钱工作,富有的人让钱为自己工作 2. 走出你的舒适区,用大的格局图景去思考 3. 穷人是在用情绪思考,被情绪(恐惧,对金钱的无知)支配,而富有的人撇开情绪用头脑思考 穷人被恐惧与欲望所支配 ...

  9. 英读廊——艺术家、穷人和音乐家之10美元的奇异之旅(The Artist, the Poor Man, and the Musician)

    * 用英语自身来理解和学习英语是最好的方式,这一系列的文章力求帮助大家在英语阅读能力上有所提升,并树立英语思维: * 推荐的阅读的方法是:先原文,适当看解析阅读,实在不行再看双语对照. * 解析中英语 ...

  10. 英语练习32 Poor Amy

    可怜的艾米 艾米这个月的房租付不出来.她需要一些帮助.不幸的是, 她的朋友没有一个能帮助她.他们也没钱.可怜的艾米真地很沮 丧.她没钱,而房东这时正在敲门.艾米很紧张.她叫道:"没 入在家! ...

最新文章

  1. 编写优质代码的 6 大关键方法
  2. Visual C++ dll
  3. 原生态纯JavaScript 100大技巧大收集---你值得拥有
  4. node.js HelloWord
  5. 带有骆驼,ActiveMQ,Elasticsearch的HL7关键用例
  6. php编写大型网站问题集
  7. C# 根据文本设置combobox的两种方法
  8. 单纯学python能干啥_如何高效学习Python编程,转行的朋友可以过来看看,单纯的经验分享...
  9. shp数据制作3DTiles白膜
  10. 流畅接口(Fluent Interface)
  11. 全球首发!惯性导航导论(剑桥大学)第三部分
  12. 通过PowerShell管理Office 365的网站
  13. 基于PHP学生成绩查询系统设计与实现 开题报告
  14. BP神经网络学习及matlab实现
  15. [转载]Node.js模块化机制原理探究
  16. 匈牙利算法解指派问题(Java代码)
  17. 4444445555
  18. HockeyApp环境搭建
  19. 用python用打印机打印EXCEL表格
  20. html5在线俄罗斯方块,HTML5最新经典俄罗斯方块游戏插件

热门文章

  1. (一)UML语言概述
  2. 在idea中使用debug
  3. 十四、final关键字
  4. 聊聊缓存淘汰算法-LRU 实现原理
  5. Centos / Ubuntu /linux/mac JAVA 环境变量设置
  6. 阶段5 3.微服务项目【学成在线】_day04 页面静态化_04-freemarker基础-基础语法种类...
  7. web-4. 装饰页面的图像
  8. ajax分页效果、分类联动、搜索功能
  9. hadoop集群免密码登陆
  10. bzoj4172: 弹珠