降智严重——nowcoder练习赛46&&codeforces #561 Div2

两场比赛降智不停,熬夜爆肝更掉rating

nowcoder:

https://ac.nowcoder.com/acm/contest/894#question

T1:水题

T2:考虑a和b的子区间!排序+二分

T3:降智傻x题。

不能看做黑色多了p个,蓝色多了(1-p)个,然后拿走球是按照比例的

因为实际多了一个占比就是不一样的。

f[i]i轮之后黑球数量。f[i]=....f[i-1]矩阵快速幂或者等比数列求和

T4:降智贪心题

二分t,每个时刻有出现次数d,

只要不断选择花费精力最小的时刻进行攻击即可

a[i]*b[1]->a[i]*b[2]堆维护即可

(考场上总是考虑一定每轮选择一样,导致可能白白浪费体力,其实不用,只要直接贪心即可)

T5:拆开公式,动态开点线段树&&树状数组

 

Codeforces

https://codeforces.com/contest/1166

T1:按照首字母开桶,直接/2分配即可。差点没写网络流。。。

T2:劳累导致降智,每行每列都要出现元音,,,直接贪心即可

T3:降智导致劳累,不用大力分情况讨论!考虑绝对值集合意义!|x-y|就是x和y的距离,|x+y|就是x和-y的距离

不妨直接都变到正半轴,也就是两者之间的距离小于等于绝对值较小的

直接都取abs,枚举abs较大的y,则abs(y)-abs(x)<=abs(x)然后lower_bound一下即可!

T4:历史头一次想出构造题!

直接考虑每个位置最小最大值,an有解只能落在一个lo-hi之间,

还原?考虑合理非配ri,推式子,从系数大的开始贪心分配即可。

最后还原,看an是否等于b

T5:CF1166E The LCMs Must be Large 

正着推其实很不好推

不妨大力猜结论

如果两两集合都有交,那么一定可以

证明:

1.显然如果两个集合没有交,一定不可以

2.否则给每个集合Si乘上一个质数pi,pi互不相同

由于两两有交,那么一个集合Si的LCM一定是所有p的乘积,而其补集一定没有pi这个质数,一定小于

所以充分必要性得证

证毕。

 

注意还是不能在一个题上干太久

时间再多,其实也都是少的

这种短时间比赛,稳比什么都重要。

posted @ 2019-05-18 10:59  *Miracle*  阅读(212)  评论(0编辑  收藏  举报