摘要:
链接: "传送门" 题意: 给出一个整数 n ,输出整数 n 的分解成若干个素因子的方案 思路: 经典的整数分解题目,这里采用 试除法 和 用筛法改造后的试除法 对正整数 n 进行分解 方法一:试除法对正整数 n 进行分解 / File Name: hdu1164.cpp Author: WArob 阅读全文
摘要:
链接: "传送门" 题意: 计算 " 1 , n ] 之间素数的个数, (1 Meisell Lehmer算法是计算超大范围内素数个数的一种算法,原理并不明白,由于英语太渣看不懂WIKI上的原理,附WIKI链接:[Here" / File Name: hdu5901.cpp Author: WAro 阅读全文
摘要:
链接: "传送门" 题意: 求 N 的拆分数 思路: 吐嘈: 求一个数 N 的拆分方案数,但是这个拆分方案十分 cd ,例如:4 = 4 , 4 = 1 + 3 , 4 = 3 + 1 , 4 = 2 + 2 , 4 = 1 + 1 + 2 , 4 = 1 + 2 + 1 , 4 = 2 + 1 + 阅读全文
摘要:
链接: "传送门" 题意: 题目给出费马小定理:Fermat's theorem states that for any prime number p and for any integer a > 1, ap = a (mod p). 我们知道Miller Rabin素数测试的算法原理就是基 阅读全文
摘要:
链接: "传送门" 题意: 现在给出 Fibonacci numbers: F(0) = 7, F(1) = 11, F(n) = F(n 1) + F(n 2) (n =2). 问第 n 项能不能整除 3 思路: F(n) % 3 == 0 可以推导出 F(n) = ( F(n 1)%3 + F( 阅读全文
摘要:
链接: "传送门" 思路: 根据完美队形的定义,可以得知,完美队形实质上是 回文串 + 序列出现峰,因为是在回文串中再次增加了一个要求,所以可以对 Manacher 进行改造,改造的部分应该为暴力匹配的循环 for( ; str[ i + p[i] ] == str[ i p[i] ] ; p[ i 阅读全文
摘要:
链接: "传送门" 思路: KMP模板题,直接生成 S 串,然后匹配一下 P 串在 S 串出现的次数,注意处理嵌套的情况即可,嵌套的情况即 S = "aaaaaa" ,P = "aa" P 串在S 串中出现了 5 次。 / File Name: jsk02e2.cpp Author: WArobot 阅读全文
摘要:
链接: "传送门" 思路: 简单拓展欧几里德,分析后可以得到方程 x + m t = y + n t + L s( s控制圈数,t代表跳t次会碰面 ),经过化简可以得到 ( n m ) t + L s = ( x y ),无解输出个"Impossible",有解就求出最小整数解即可,最小整数解求法为 阅读全文
摘要:
链接: "传送门" 题意: 题目中给出一个循环 for (variable = A; variable != B; variable += C) ,这个东东还需要 mod 2^k 问至少多次能退出,如果进入死循环输出输出"FOREVER" 思路: 简单拓欧嘛,简单分析一下 A + C x = B + 阅读全文
摘要:
链接: "传送门" 题意: 狼抓兔子,狼从 0 出发沿逆时针寻找兔子,每走一步的距离为 m ,所有洞窟的编号为 0 ~ n 1 ,问是否存在一个洞窟使得兔子能够安全躲过无数次狼的搜捕。 思路: 简单的拓展欧几里德,设 st 为兔子洞窟编号( 0 / File Name: hdu1222.cpp Au 阅读全文