
CF没有AC的题
zjj1128
这个作者很懒,什么都没留下…
展开
-
F1 - Nearest Beautiful Number (easy version)(预处理)
题意 给你两个数n,k,让你找到大于等于n的最小的k-beautiful数。 k-beautiful数就是数字的种类数小于等于k的数。 n的范围是1<=n<=1e9. k的范围是1<=k<=2. 举个例子 比如 177890 2,得到的最小的2-beautiful是181111. 思路 刚开始的时候k=1的时候很简单,就直接模拟就可以了,但是当k=2的时候,刚开始我也想直接模拟,可是发现总会少考虑情况,最后看了题解发现我们可以把所有的1-beautiful数和2-beautiful都原创 2021-09-06 20:46:17 · 338 阅读 · 0 评论 -
E - Polycarp and String Transformation(思维)
题意 有一个字符串s,每次删除一个字母,把所有这个字母都删除,然后t=t+s,得到字符串t。 现在给你字符串t,让你求出s串和删除的顺序。 思路 首先第一点,我从后往前看这个t,可以找到删除的顺序,删除的顺序就是字母出现的顺序的逆序。 然后我的想法就是枚举字符串t的前缀,这个前缀有可能就是字符串s,就以此枚举,因为知道了删除顺序,看看根据这个前缀能不能构造出t,但是这样的时间复杂度是有些爆炸的。 我就开始想一些优化。 首先想到的第一个优化就是我们可以先根据字符串t的前缀求t的时候,我们可以先看一下最后构造出原创 2021-09-06 18:37:25 · 239 阅读 · 0 评论 -
D. Make a Power of Two(DIV3)(预处理+模拟)
题意 T组数据,每组数据一个正整数k,k<=1e9,我们可以对k进行两种操作,第一种操作是删除k中的一位数,第二种操作是在k的末尾加上一位数,问用最少多少次操作可以使k成为2的次幂。 思路 2的次幂一共有60多个,我们只需要全部预处理出来,然后直接一个一个对比就可以了。 那一天晚上不知道为啥人傻了,感觉预处理出来以后不能写。。 代码 #include <bits/stdc++.h> #define ll long long #define fi first #define se secon原创 2021-09-06 13:14:11 · 207 阅读 · 0 评论 -
C - Manhattan Subarrays(思维)
题意 定义一种操作,d(p,q)=abs(xp−xq)+abs(yp−yq).d(p,q)=abs(x_p-x_q)+abs(y_p-y_q).d(p,q)=abs(xp−xq)+abs(yp−yq). 给你三个点,p,q,r如果d(p,r)=d(p,q)+d(q,r)d(p,r)=d(p,q)+d(q,r)d(p,r)=d(p,q)+d(q,r)那就说明这三个点是坏的。 给你一个序列,每个点都是(bi,i)(b_i,i)(bi,i),让你判断有这个序列有多少好的子序列。长度为1和长度为2的都是好原创 2021-07-15 15:56:01 · 426 阅读 · 0 评论