随笔分类 -  codeforce

摘要:我们可以把S与T每隔一位插入,构成一个新串A 首先,我们发现题目告诉我们旋转非交,那么事情就很好办了。 T中的字母有两种状态,一种是未翻转,一种是翻转,不翻转的S与T在这一位上一模一样,我们不去管它。 至于翻转的,就是一个回文串。 那么我们PAM(回文自动机)跑起来,成功滑稽。不会PAM的同学点这里 阅读全文
posted @ 2018-01-16 19:38 泪寒之雪 阅读(166) 评论(0) 推荐(0)
摘要:一道数论题。这很像BZOJ的一道题,好像是P^P^P^P......(无穷多个P)mod M的值。 我们知道当模数P是质数的时候,我们有 X^i=X^(i % p-1) (mod p) 我们不妨对其扩展,得到 X^i=X^(i% φ(p)+ φ(p))(mod p)(i>φ(p)) 我们又可证φ(φ 阅读全文
posted @ 2018-01-16 19:28 泪寒之雪 阅读(161) 评论(0) 推荐(0)
摘要:我们发现N很小,那么我们可以爆搜每个人取或不取,最后统计答案。 阅读全文
posted @ 2018-01-16 19:15 泪寒之雪 阅读(152) 评论(0) 推荐(0)
摘要:题目大意:老师要排座位,要求每个人的四周的邻居不是原来的,求方案 题目链接 SOL :min(n,m)<4 就暴搜,否则就构造。 阅读全文
posted @ 2018-01-16 19:13 泪寒之雪 阅读(161) 评论(0) 推荐(0)
摘要:一道英语阅读理解,满满的都是套路,欺负我英文不好(自己去翻译吧,我就不写中文了) 原题链接 我们模拟一遍就好了,如果"!"把句子中没出现的字母排除,"."就排除句子里出现的。 注意答案是从已知那个字母开始统计的。 #include<bits/stdc++.h> using namespace std 阅读全文
posted @ 2018-01-16 19:10 泪寒之雪 阅读(130) 评论(0) 推荐(0)
摘要:A: 我们发现2^n增长很快,n>30时便没有贡献了。 B 我们dfs一边就好了。 C : 我们采取贪心的策略,我们先用A[i]去更新其后面的数据: 举个例子 a[1]=10 ,a[2]=100,那么我们发现a[2]永远比a[1] 劣,那么我们用a[1]的两倍更新a[2]. 我们再从高位向下做,我们 阅读全文
posted @ 2018-01-15 20:22 泪寒之雪 阅读(157) 评论(0) 推荐(0)
摘要:题目大意:给你一个子串,其在2^k方的十进制表示中出现过(后100位),让我们求k(k<10^50) 原题链接 SOL : 设a长度为n。 可以尝试构造一个数b,使得a⋅10^m+b成为其后缀。 令 x= a⋅10^m+b,则x=2^k(mod 10^(n+m)) 我们发现 2^(n+m)|x,且 阅读全文
posted @ 2018-01-15 20:06 泪寒之雪 阅读(272) 评论(0) 推荐(0)
摘要:题目大意: 多组数据,给你一张真值表,求字典序最小的表达式。(真值表只有3个变量x,y,z) 我们发现答案不会很长,而且我们只有 256 种不同的输入,那么我们就可以打表。 我们怎么打表呢?我们发现答案不会很长,那么我们搜索表达式至len为20位,再加上最优性剪枝。跑个3min就出来了。 (看起来有 阅读全文
posted @ 2018-01-11 13:44 泪寒之雪 阅读(297) 评论(0) 推荐(0)
摘要:题目大意: 给你X门学科,每一门学科有两个参数,ti和·ai,我们想通过一门学科只有满足以下2个条件: 1.其尝试考试的simga ti <=T; 2.其尝试考试的次数<=ai 求最多通过的学科数,并输出方案。 SOL: 我们发现如果我们有考试却没有通过,我们还不如不考。 我们又发现其满足二分性质。 阅读全文
posted @ 2018-01-10 21:16 泪寒之雪 阅读(301) 评论(0) 推荐(0)