![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
素数
keyboarder_zsq
你所认为的极限,其实是别人的起点。
展开
-
hdoj5317【素数预处理】
题意: F(x):对于x的素数因子的种类个数。 给t(<=1e6)个查询,每个查询给出L,R(<=1e6),求在区间[L,R]内求一个maxGCD(F(i),F(j)) F(i)肯定<7; 思路: 计数一下,然后后面直接搞; 用sum数组表示从1->i有数量j的个数。 最终他的个数有>=2的话可以,或者还有一种情况就是6/2或者6/3的最大公约数是2/3.后面就是手动枚举了一下。 其原创 2016-07-24 01:05:59 · 487 阅读 · 0 评论 -
lightoj1259 【素数预处理】
题意: 输出有多少对满足条件的(a,b) both a and b are prime; a+b=n a<=b; 思路: 一开始想的就是打表一个素数数组,然后还去二分。。mdzz。。直接判断一下n-A[I]是不是素数和是不是>=A[I]就好了。 都能标记何必二分…= =、我比较蠢。。 然后是内存爆了。。 后来标记的需要开bool,而且那个记录素数的数组最好开小; 以后int a[原创 2016-09-13 21:03:14 · 427 阅读 · 0 评论 -
51nod1181【素数筛】
思路: 直接就是筛出素数,然后我很撒比的从那个地方往后for找一个位置也是质数的输出; #include using namespace std; typedef long long LL; const int N=1e6+10; bool IsPrime[N]; int prime[N]; int num; void init() { num=0; memset(Is原创 2016-10-12 22:58:22 · 484 阅读 · 0 评论 -
LightOJ1197【数学】
引自:WONTER 题意: 给你两个数,a,b,让你求区间[a,b]里面有多少个素数; 思路: 首先要知道,我们要想筛 [1, b] 中所有的素数,只需要用到 [1, sqrt(b)] 中的所有素数来筛就可以了。 假设我们是求 [1, b] 中所有的素数,我们就只需要打表出 [1, sqrt(b)] 的素数,然后用这些素数直接去套用常规的素数筛选方法就好了,也就是(j = p原创 2016-10-07 00:27:03 · 768 阅读 · 0 评论 -
lightoj 1035【暴力】
思路: 预处理一下素数数组,然后暴力计算就好了。 类似处理素数因子; #include #include #include #include using namespace std; typedef long long LL; const long long INF=0x3f3f3f3f; const int N=1e2+10; int prime[N],ans[N]; bool原创 2016-10-31 17:49:53 · 445 阅读 · 0 评论 -
AtCoder Beginner Contest 052
没看到Beginner,然后就做啊做,发现A,B太简单了。。。然后想想做完算了。。没想到C卡了一下,然后还是做出来了。D的话瞎想了一下,然后感觉也没问题。假装all kill.2333 AtCoder Beginner Contest 052 A题意: 输出大的面积? 思路: max(A*B,C*D); AtCoder Beginner Contest 052 B题意: 枚举过程原创 2017-02-27 21:23:52 · 609 阅读 · 0 评论