备战2013
zck921031
这个作者很懒,什么都没留下…
展开
-
SCU 4320: File Recover
题意是问给定字符串中出现超过一次的不同子串有多少个。显然可以用后缀自动机来搞。知道自动机中后缀转移的性质,不难实现沿fail指针统计不同子串个数。#include#pragma GCC optimize ("O2")#include#include#include#include#includeusing namespace std;typedef long long原创 2013-10-13 22:05:58 · 803 阅读 · 0 评论 -
叉姐的Noip模拟题
一个平凡的事实是,与或非等位运算,每个位是独立的。所以只要分析其中某一位就行了。只看某一位,实际就是一个取余的统计,再看对2的余数既可,不多说。原创 2013-10-13 22:12:24 · 1245 阅读 · 0 评论 -
SCU 4311: Sum of LCM
考虑整除关系上的一对容斥,又叫莫比乌斯反演。首先要会求gcd(i,j)=k [1对每个k,有平凡等式gcd(i,j)*lcm(i,j)=i*j。故lcm(i,j)=i*j/k所以我们用莫比乌斯反演算出gcd(i,j)=k 的sum(i*j)既可。又根据独立性可以分离成sum(i)*sum(j),随手搞就行了。O(nlgn)不卡时间原创 2013-10-13 22:18:31 · 1004 阅读 · 1 评论 -
SCU 4315: Sequence
异或运算每位独立。分析某一位,很容易发现从左边开始,每次加入一个0,总的1不变,0多一个;反之亦然。这样扫一遍,就处理一个位。处理31位既可(signed int)原创 2013-10-13 22:21:44 · 855 阅读 · 0 评论 -
叹
校网上csdn非常卡,我又不会再csdn中用mathjax,还经常点发布的时候卡死。为了备战今年的regional,最终还是觉得在此记下一些思路。文章写的挫,见谅。原创 2013-10-13 22:02:18 · 656 阅读 · 0 评论