说到素数不得不说素数判定算法。 其中极为经典的为Rabin Miller测试。 通过二次探测的方法,我们可以将其正确率上升到一个很高的高度。 二次探测的原理我还是不太懂,所以NOI前我暂时只是梳理一下这个算法的流程。 首先,我来介绍一些小Trick。 $O(1)$的快速乘。 在一些卡常数而且爆lon ...
分类:
其他好文 时间:
2017-07-10 16:28:08
阅读次数:
228
题目:将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 程序分析:对n进行分解质因数,应先找到一个最小的质数k,然后按下述步骤完成: (1)如果这个质数恰等于n,则说明分解质因数的过程已经结束,打印出即可。 (2)如果n>k,但n能被k整除,则应打印出k的值,并用n除以k的商,作 ...
分类:
其他好文 时间:
2017-07-09 19:34:06
阅读次数:
117
题意: 对于给定集合,求解最大的子集合,使得集合内两两之商不为质数。 解法: 考虑对于每一个数字分解质因数可以得到 $O(nloglogNUM)$ 条两个数字不可以出现在同一集合的信息。 同时发现一条代表冲突的边必然是联结一个由奇数个质数连乘构成的数字和一个由偶数个质数连乘构成的数字。 是一个二分图 ...
分类:
其他好文 时间:
2017-07-06 22:53:58
阅读次数:
145
【BZOJ4197】[Noi2015]寿司晚宴 Description 为了庆祝 NOI 的成功开幕,主办方为大家准备了一场寿司晚宴。小 G 和小 W 作为参加 NOI 的选手,也被邀请参加了寿司晚宴。 在晚宴上,主办方为大家提供了 n?1 种不同的寿司,编号 1,2,3,…,n?1,其中第 i 种 ...
分类:
其他好文 时间:
2017-07-06 22:02:00
阅读次数:
237
import mathsu=[]for i in range(100,1000): a=i/100 b=(i-100*a)/10 #b=i/10%10 c=i-100*a-10*b #c=i%10 if a**3+b**3+c**3==i: print i su.append(i)print len ...
分类:
编程语言 时间:
2017-06-25 16:16:02
阅读次数:
179
传送门 分解质因数,不说了 这题坑了我2个多小时 教训 不熟悉位运算的优先级一定要加括号!!!! ...
分类:
其他好文 时间:
2017-06-20 20:17:20
阅读次数:
130
题目描述树链是指树里的一条路径。美团外卖的形象代言人袋鼠先生最近在研究一个特殊的最长树链问题。现在树中的每个点都有一个正整数值,他想在树中找出最长的树链,使得这条树链上所有对应点的值的最大公约数大于1。请求出这条树链的长度。 输入描述:第1行:整数n(1 ≤ n ≤ 100000),表示点的个数。第 ...
分类:
其他好文 时间:
2017-06-18 21:52:22
阅读次数:
368
package com.xiaowu.demo; /** * 将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 * * * @author WQ * */ public class Demo4 { public static void main(String[] args) { ... ...
分类:
编程语言 时间:
2017-06-05 22:09:52
阅读次数:
196
将一个正整数分解质因数。例如:输入90,打印出90=2*3*3*5。 public class Example04 { public static void main(String[] args) { f(100); } public static void f(int n) { int k = 2 ...
分类:
编程语言 时间:
2017-05-31 16:40:06
阅读次数:
122
分析:考虑从1到n所有数的质因数分解,记录每个质数的最高次数,同理从n+1循环到2n,如果循环到m时每个质因子的次数都不低于所记录的,则跳出循环,结果即为m。先预处理质数,复杂度为O(nlongn)。 ...
分类:
其他好文 时间:
2017-05-26 17:29:55
阅读次数:
211