[洛谷P1835]素数密度】的更多相关文章

https://www.luogu.org/problemnew/show/P1835 对于40%,对每个数进行最大$O(\sqrt n)$的判断,因为n比较大所以超时. 想到线性筛,然而我们并不能筛到2e9,时间空间都不允许因为2e9素因子最大也到不了50000,我们预处理出2-50000以内的素数,然后对于每一个数,一个一个的出素因子,进行判断,这里放一下代码. #include <algorithm> #include <iostream> #include <cstr…
题目大意:求区间[l,r]中素数的个数($1\leq l,r\le 2^{31}$,$r-l\leq 10^6$). 解题思路:首先,用筛法筛出$2~\sqrt{r}$内的素数. 然后用这些素数筛l~r内的素数即可. 开数组时可以用偏移方法解决空间问题. 时间复杂度$O(\sqrt{r})$. C++ Code: #include<cstdio> #include<cmath> #include<cstring> #include<vector> bool…
prime 洛谷p1835 题目描述 给定区间[L, R](L <= R <= 2147483647, R-L <= 1000000),请计算区间中 素数的个数. 输入输出 输入 两个数 L 和 R. 输出 一行,区间中素数的个数. 样例 样例输入 2 11 样例输出 5 说明 时空限制 时间限制 1s/testcase 空间限制 32MB 思路 R-L<=1000000 L <= R <= 2147483647 时间上用质数筛能过 求出2~45000的所有质数(sqr…
题目描述: 给定区间[L,R](L≤R≤2147483647,R-L≤1000000),请计算区间中素数的个数. 思路: 暴力: 蒟蒻:哦?绿题?这么水?(便打出下面代码) 这绝对是最容易想到的!但,时间复杂度\(O(n \cdot\) \(\sqrt{n}\) $ )$ 恭喜蒟蒻获得\(\color{red}\texttt{0分}\) 正解: 思考: 怎么样的数是素数? 回答: (由小学知识可得) 素数是除自己和\(1\)以外,没有其他约数 埃氏筛法: 埃氏筛法的优化是在于它用素数筛掉合数,不…
题目描述 给定区间[L,R](L≤R≤2147483647,R-L≤1000000),请计算区间中素数的个数. 输入输出格式 输入格式: 两个数L和R. 输出格式: 一行,区间中素数的个数. 输入输出样例 输入样例#1: 2 11 输出样例#1: 5 AC代码: #include<cstdio> #include<cmath> using namespace std; ; int ans,l,r,k1,k2,L;//k1,k2是为了以一次除法代替大量乘法运算 bool f,chec…
类型:Floyd 传送门:>Here< 题意:定义一条路径密度 = 该路径长度 / 边数.给出一张$DAG$,现有$Q$次询问,每次给出$X,Y$,问$X,Y$的最小密度路径($N \leq 50$) 解题思路 由于$N$非常小,考虑$Floyd$求最短路.但是这题与$Floyd$的不同就在于需要除以边数 可以枚举边的数量.在边的数量$k$确定时,只需要求得恰好经过$k$条边的最短路即可.有没有联想到矩阵乘法……但是这道题是要求先预处理之后询问,因此矩阵乘法的$log \ M$优化就没有意义了…
P3912 素数个数 题目描述 求1,2,\cdots,N1,2,⋯,N 中素数的个数. 输入输出格式 输入格式: 1 个整数NN. 输出格式: 1 个整数,表示素数的个数. 输入输出样例 输入样例#1: 复制 10 输出样例#1: 复制 4 说明 • 对于40% 的数据,1 \le N \le 10^61≤N≤106: • 对于80% 的数据,1 \le N \le 10^71≤N≤107: • 对于100% 的数据,1 \le N \le 10^81≤N≤108. 思路:RE,线性筛一边就可…
题目传送门; 首先理解题目,究其本质就是一个最短路问题,而且数据范围贼水,用floyd完全没问题,但是题目有变化,要求出路径边权值与边数之比,这里就可以考虑在把floyd中的二维数组变为三维,f[ i ][ j ][ l ]表示从 i 到 j 经过 l 条边的情况,而且因为是有向图,所以从一点到达另一点经过的边数最多为n-1条(除非数据有问题),做完floyd之后就从1-n-1枚举边数,然后比较得出ans即可,不过要注意,对于f[ s ][ t ][ l ],某些 l 的情况是不存在的,所以别忘…
题意 题目链接 Sol zz floyd. 很显然的一个dp方程\(f[i][j][k][l]\)表示从\(i\)到\(j\)经过了\(k\)条边的最小权值 可以证明最优路径的长度一定\(\leqslant N\) 然后一波\(n^4\) dp就完了 #include<cstdio> #include<cstring> #include<algorithm> using namespace std; const int INF = 1e9 + 10; inline in…
洛谷P1463:https://www.luogu.org/problemnew/show/P1463 思路 约数个数公式  ai为质因数分解的质数的指数 定理: 设m=2a1*3a2*...*pak(其中p为第k大的质数)是Antiprime数 则必有a1≥a2≥a3≥...≥ak≥0 因此如果有两个值约数个数相同 则要取值比较小的那个 剪枝: 有了这个定理我们就可以搜索质数的指数 由于231已经远远超过数据规模 因此我们只需要搜到31层 质因子的个数最多只有10个(所有质因子相乘得到他们可以…