摘要: 欧拉函数模板//直接求解欧拉函数int euler(int n){ //返回euler(n) int res=n,a=n; for(int i=2;i*i1) res=res/a*(a-1); return res;}//筛选法打欧拉函数表#define Max 100000... 阅读全文
posted @ 2015-06-18 19:53 icodefive 阅读(265) 评论(0) 推荐(0) 编辑
摘要: 母函数:所谓的母函数我觉得就是将一些组合数问题转化成多个多项式相乘,然后对系数做一些处理....指数型母函数:这里讲的非常不错泰勒公式:e^x= 1 + x/1! + x^2/2! - x^3/3! + ... + x^n/n!;e^-x= 1 - x/1! +x^2/2! - x^3/3! + .... 阅读全文
posted @ 2015-06-15 16:19 icodefive 阅读(1256) 评论(0) 推荐(0) 编辑
摘要: 做质因子分解的时候将先打素数表会节省很多时间 阅读全文
posted @ 2015-06-13 21:41 icodefive 阅读(160) 评论(0) 推荐(0) 编辑
摘要: //直接求解欧拉函数int euler(int n){ //返回euler(n) int res=n,a=n; for(int i=2;i*i1) res=res/a*(a-1); return res;}//筛选法打欧拉函数表 #define Max 1000001int euler[Max];... 阅读全文
posted @ 2015-06-13 21:31 icodefive 阅读(128) 评论(0) 推荐(0) 编辑
摘要: polya的精髓就在与对循环节的寻找,其中常遇到的问题就是项链染色类问题。当项链旋转时有n种置换,循环节的个数分别是gcd(n, i);当项链翻转时有n种置换,其中当项链珠子数位奇数时,循环节的个数是n/2+1当项链珠子数是偶数个时,当翻转线穿过珠子时,循环节个数为n/2+1,否则为n/2;1.po... 阅读全文
posted @ 2015-06-13 20:46 icodefive 阅读(663) 评论(0) 推荐(0) 编辑
摘要: Description两只青蛙在网上相识了,它们聊得很开心,于是觉得很有必要见一面。它们很高兴地发现它们住在同一条纬度线上,于是它们约定各自朝西跳,直到碰面为止。可是它们出发之前忘记了一件很重要的事情,既没有问清楚对方的特征,也没有约定见面的具体位置。不过青蛙们都是很乐观的,它们觉得只要一直朝着某个... 阅读全文
posted @ 2015-05-25 20:24 icodefive 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 练习赛地址http://acm.hrbust.edu.cn/vj/index.php?c=contest-contest&cid=70a.水。。。b.暴力打表。。。c.给四个正方形,求一个能覆盖他们的正方形的面积,其实能覆盖两个最大的正方形就一定能覆盖四个正方形,所以输出两个最大正方形的边长和~\(... 阅读全文
posted @ 2015-05-12 11:54 icodefive 阅读(201) 评论(0) 推荐(0) 编辑
摘要: 当背包有物品可以放很多件的时候,可以将物品变成1,2,4,。。。2^m, n-2^m, 阅读全文
posted @ 2015-04-24 20:36 icodefive 阅读(174) 评论(0) 推荐(0) 编辑
摘要: 1.hdu3247用ac自动机预处理出所有文本串到文本串的安全距离(即不通过病毒串)说下为什么不加bfs部分的注释部分,因为他会导致所求的距离不是安全距离,而之所以能保证bfs的正确是因为如果两文本串连接会通过病毒部分的话,那么next一定会先到病毒部分,(因为病毒部分一定是在两个文本串之间会导致n... 阅读全文
posted @ 2015-04-23 20:32 icodefive 阅读(228) 评论(0) 推荐(0) 编辑
摘要: 数位dp的思想就在于递归,记录当前的某一个唯一状态,依次递归下去,要注意唯一。数位dp常设的状态有当前位置,上一数字,是否具有前导零,是否有限制。1.CodeForces 55DBeautiful numbers题目大意:一个数是幸运数当且仅当这个数能整除所有位数,求[a,b]有多少幸运数10以内的... 阅读全文
posted @ 2015-04-18 20:31 icodefive 阅读(391) 评论(0) 推荐(0) 编辑