- 博客(2)
- 收藏
- 关注
原创 第二次积分赛题解
一个简单的贪心,注意到“一面墙的一部分部分如果被破坏,那么这整面墙将被破坏”,我们需要最少的破坏次数,所以我们选区间的时候肯定是能往右选就往右选,我把所有墙按照R(右端点)排序,然后每次破坏时从目前没被破坏的墙中选择R(右端点)最往左靠的墙开始破坏然后将 [R,R+D-1] 这个区间破坏,然后反复去选择,直到所有墙都被破坏。这题的N范围是1e18,但是注意式子,q的指数是3,所以q最多到1e6,p<q,所以我们用欧拉筛预处理1e6之内的素数,然后循环枚举q的值,然后计算对于当前值,有多少数满足就行。
2024-07-11 11:47:59
391
1
原创 2023湖南省第十九届大学生计算机程序设计竞赛 ---hard math
题目要求的区间是[L,R],而 ans2-ans1 表示的是区间[L+1,R],所以我们要再特判一下L,这样就满足题意了。题目中的f(x) 表示 数字x中非重复的位数,例如f(10112)=3 ,非重复的位数分别是 1,0,2共3个。注意到题给的L,R非常大,可能有200000位数!不懂数位dp的可以先去自行了解一下。[0,L] 满足题意的答案记为 ans1。[0,R] 满足题意的答案记为 ans2。所以我们要用2个数组去分别记录L,R。这样答案为 ans2-ans1。很明显这是一道数位dp题。
2024-03-21 20:22:50
467
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人