hdu 2136 素数筛选法
来源:互联网 发布:巴啦啦小魔仙玩具淘宝 编辑:程序博客网 时间:2024/06/05 09:30
#include<stdio.h>#include<string.h>int Prime[1000010],Primer[1000010];void IsPrime(){int sum = 0;for(int i = 2; i <= 1000000; ++i)if(Prime[i] == 0){++sum;Prime[i] = sum;for(int j = i+i; j <= 1000000; j+=i)Prime[j] = sum;}}int main(){IsPrime();int N;while(~scanf("%d",&N)){printf("%d\n",Prime[N]);}return 0;}
题目大意:每个素数在素数表中都有一个序号,设1的序号为0,则 2
的序号为1,3的序号为2,5的序号为3,以此类推。现在要求输出 所
给定的数n的最大质因子的序号,0<n<1000000。
思路:巧用素数打表法。用sum计算素数的序号,将素数连同他的倍
数一起置为它的素数序号, 从小到大循环, 这样数组里存放的序号就
是最大素数因子的序号了。
注意:初始化时令所有数为0,Prime[0] = Prime[1] = 1。
即Prime[i]为0是素数,Prime[i]为1为素数。改变之后Prime[i]为数 i
的最大素数因子的序号 。
0 0
- hdu 2136 素数筛选法
- 筛选素数法(HDU 2710)
- HDU 2136 Largest prime factor【素数筛选法】
- HDU 2136 Largest prime factor (筛选法求素数)
- hdu 2136 Largest prime factor(素数筛选)
- hdu 1262( 筛选法求素数 )
- HDU 1319.素数剪切(筛选法)
- hdu 1999 素数筛选
- HDU 1262 寻找素数对(素数筛选法)
- hdu 4548 美素数(筛选法求素数)
- HDU 1239 素数筛选+枚举
- hdu 2136 (Largest prime factor)就是简单 的筛选素数法
- HDOJ(HDU) 2136 Largest prime factor(素数筛选)
- HDU 2136 Largest prime factor(素数筛选+打表)
- hdu how many prime numbers 筛选法求素数
- HDU 1286 找新朋友 素数筛选法求公约数
- HDU 1164 Eddy's research I【素数筛选法】
- hdu 5317 RGCDQ(素数筛选法+前缀和)
- POM文件详解01
- 高斯赛德尔迭代法
- 解决ThinkPHP除去链接中的index.php
- angularJS自定义directive之带参方法传递
- LIBCURL上传文件, 下载文件,打开网页,POST数据,支持https等一系列函数方便各种模拟登陆注册账户
- hdu 2136 素数筛选法
- Spring学习笔记<三> 获取请求对象和请求头
- Mysql limit 优化,百万至千万级快速分页,--复合索
- 签名参数sign生成说明-tencent
- [00305]字节到大整数的打包与解包
- java Calendar和Date()的转化
- 声明式异常使用全局处理
- git——git flow的安装
- Retrofit源码解析