摘要: HDU5874 Friends and Enemies 题意:m个人,n种颜色的石头,两个人不是朋友就是敌人,朋友之间至少有一个同种颜色的石头,敌人之间不能有相同的石头,问用最多种的石头的情况下,n能否满足要求 做法:通过构造发现,对于一张完全的二分图来说,两个集合之间的边都会对答案贡献1,那么构造 阅读全文
posted @ 2018-09-25 22:46 RRRR_wys 阅读(151) 评论(0) 推荐(0) 编辑
摘要: HDU5875 Function 做法:st表+二分的经典题。不能使用数学函数log,否则会tle,需要预处理 c++ include define rep(i,a,b) for(int i=a;i=b; i) define mem(a,b) memset(a,b,sizeof(a)) define 阅读全文
posted @ 2018-09-25 19:50 RRRR_wys 阅读(131) 评论(0) 推荐(0) 编辑
摘要: HDU6038 Function 做法: 展开后有,$f(i) = b_{f(a_i)} = b_{b_{f(a_{a_i})}} = ... = b_{b_{..b_{f(i)}}}$,可以发现当 $a_i$ 所在的循环节中确定一个时,整个循环都确定了,根据这个式子还可以发现,对于一个$a_i$所 阅读全文
posted @ 2018-09-25 15:35 RRRR_wys 阅读(133) 评论(0) 推荐(0) 编辑
摘要: HDU5573 做法:本题的关键在于题目限制了n≤2^k,如果可以不选的话,我就会用最左边的1,2,4...凑出n,这里需要用减法,于是先把所有的数都加到答案里,这个值与n的插值,就是我们要消除的。选择一些数的和,等于这个插值除二即可。如果n是个奇数,直接可以计算。如果是偶数,先把n减一,然后在做第 阅读全文
posted @ 2018-09-25 00:29 RRRR_wys 阅读(232) 评论(0) 推荐(0) 编辑