题意:
给你一幅这样子生成的图,求最小生成树的边权和。
思路:对于i >= 6的点连回去的5条边,打表知907^53 mod 2333333 = 1,所以x的循环节长度为54,所以9个点为一个循环,接下来的9个点连回去的边都是一样的。预处理出5个点的所有连通状态,总共只有52种,然后对于新增加一个点和前面点的连边状态可以处理出所有状态的转移。然后转移矩阵可以处理出来了,快速幂一...
分类:
其他好文 时间:
2014-08-04 21:36:28
阅读次数:
294
题目链接:uva 11256 - Repetitive
Multiple
题目大意:给定一个数n,要求找到最小的k,使得k?n为题目中定义的重复数字.
解题思路:枚举k?n的循环节长度,比如当前枚举为2,那么一次判断u=1001,1001001,1001001001
...,取d = gcd(n,u), 那么k = u / d, a = n / d (因为n?k=u?a)并且保...
分类:
其他好文 时间:
2014-08-03 12:54:35
阅读次数:
211
UVA 10298 - Power Strings
题目链接
题意:本意其实就是,给定一个字符串,求出最小循环节需要几次循环出原字符串
思路:利用KMP中next数组的性质,n - next[n]就是最小循环节,然后n / 循环节就是答案
代码:
#include
#include
const int N = 1000005;
char str[N];
int ...
分类:
其他好文 时间:
2014-08-02 18:21:43
阅读次数:
282
注意n=1的情况#include #include #include #include #include #include #include #include #include #include #include #include #include using namespace std;typed...
分类:
其他好文 时间:
2014-08-01 15:31:01
阅读次数:
260
继续来置换,这次的题也是很简单的。
题目大意:
对于一个长度为n的字符串,有一个数组表示第i个字符放到那个位置。
输入多个字符串,问这样操作k次后的字符串是什么样子的。
解题思路:
对于每一个置换,我们会求出循环节,这样可以减少模拟的次数。
下面是代码:
#include
#include
#include
#include
#include ...
分类:
其他好文 时间:
2014-07-27 11:50:14
阅读次数:
220
题意很简单,求不是那么好求的,k很大 要操作很多次,所以不可能直接来的,印象中解决操作比较多无非线段树 循环节 矩阵 组合数等等吧,这道题目 也就只能多画画什么 的了
就以第一个案例为主吧 ,
3
1 2 3
k我们依据画的次数来自己定好了
下面的每个数表示这个位置的 数由最初的 数组num[]中多少个数加起来得到的
当k为0的时候呢,就是
1 1 1
k为1的时候呢
1 2...
分类:
其他好文 时间:
2014-07-23 22:32:17
阅读次数:
196
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4861解题报告:桌子上有k个球 ,第i个球的价值wi =1^i+2^i+...+(p-1)^i (mod p),现在两个人轮流取,如果第一个取的人最后得到的价值总和最大,输出YES,否则 输出NO 。k和...
分类:
其他好文 时间:
2014-07-23 22:20:37
阅读次数:
218
HDU 4861 Couple doubi
题目链接
题意:给定k,p,有k个球,每个球的值为1^i+2^i+...+(p-1)^i (mod p) (1
思路:先手不可能输,非赢即平,那么只要考虑每种球的值,
利用费马小定理或欧拉定理,很容易得到该函数的循环节为p - 1,
那么i如果为p - 1的倍数,即为循环节的位置,那么每个值都为1,总和为p - 1
如果...
分类:
其他好文 时间:
2014-07-22 23:59:57
阅读次数:
515
题目来源:POJ 2185 Milking Grid
题意:至少要多少大的子矩阵 可以覆盖全图
例如样例 可以用一个AB 组成一个
ABABAB
ABABAB 可以多出来
思路:每一行求出周期 总共n个 求这n个周期的最小公倍数 如果大于m 取m
每一列求出周期 总共m个求这个m个周期的最小公倍数 如果大于n取n
答案就是2个最小公倍数的积
#inc...
分类:
其他好文 时间:
2014-07-21 23:29:43
阅读次数:
302