HDU 2136 Largest prime factor (素数打表。。。)
题意:给你一个数,让你求它的最大因子在素数表的位置。
析:看起来挺简单的题,可是我却WA了一晚上,后来终于明白了,这个第一层循环不是到平方根,
这个题和判断素数不一样,只要明白了这一点,就很简单了。
代码如下:
#include <iostream>
#include <cstdio>
#include <algorithm>
#include <queue>
#include <vector>
#include <cstring>
#include <map>
#include <cctype>
#include <cmath> using namespace std;
typedef long long LL;
const int maxn = 1000000 + 5;
int a[maxn]; void init(){
memset(a, 0, sizeof(a));
int cnt = 1;
for(int i = 2; i < maxn; ++i) if(!a[i]){//这个地方不是sqrt(maxn+0.5)
a[i] = cnt++;
for(int j = i + i; j < maxn; j += i)
a[j] = a[i];//这个是不断更新的。
}
} int main(){
init();
int n;
while(~scanf("%d", &n))
printf("%d\n", a[n]);
return 0;
}
HDU 2136 Largest prime factor (素数打表。。。)的更多相关文章
- HDOJ(HDU) 2136 Largest prime factor(素数筛选)
Problem Description Everybody knows any number can be combined by the prime number. Now, your task i ...
- 2136 Largest prime factor(打表)
Problem Description Everybody knows any number can be combined by the prime number.Now, your task is ...
- HDU 2136 Largest prime factor(查找素数,筛选法)
题目梗概:求1000000以内任意数的最大质因数是第几个素数,其中 定义 1为第0个,2为第1个,以此类推. #include<string.h> #include<stdio.h& ...
- HDU 2136 Largest prime factor 參考代码
#include <iostream> #include <vector> #include <cmath> using namespace std; const ...
- HDU 2136 Largest prime factor
题目大意:求出比给出数小的互质的质数个数. 题解:直接用筛法求素数,稍微改编一下,将原先的布尔数组变为数组用来记录信息就可以了. 注意点:大的数组定义要放在程序的开头,不要放在main里面,不然会栈溢 ...
- 杭电 2136 Largest prime factor(最大素数因子的位置)
Largest prime factor Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...
- 【沙茶了+筛选保存最大质因数】【HDU2136】Largest prime factor
Largest prime factor Time Limit: 5000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Oth ...
- 【ACM】Largest prime factor
/*打表把素数能组合的数先设置成相应的位数*/ /* if n equals two and n is No.1 position of prime factors so four position ...
- [暑假集训--数论]hdu2136 Largest prime factor
Everybody knows any number can be combined by the prime number. Now, your task is telling me what po ...
随机推荐
- remote Request
import java.io.IOException; import java.io.InputStream; import java.io.UnsupportedEncodingException; ...
- Utils使用
获取两个时间之间的天数 var startDate = new Date(_startDate).getTime(); var endDate = new Date(_endDate).getTime ...
- 第一模块第一章 review
---恢复内容开始--- 练习题: 1.简述编译型与解释型语言的区别,且分别列出你知道的那些属于编译型,哪些属于解释型 机器语言:由于计算机内部只能接受二进制代码,因此,用二进制代码0和1描述的指令称 ...
- 18 网络编程-TCP/IP各层介绍(5层模型讲解)
1.TCP/IP五层协议讲解 物理层--数据链路层--网络层--传输层--应用层 我们将应用层,表示层,会话层并作应用层,从tcp/ip五层协议的角度来阐述每层的由来与功能,搞清楚了每层的主要协议 就 ...
- 快速预热Buffer_Pool缓冲池
在之前的版本里,如果一台高负荷的机器重启后,内存中大量的热数据被清空,此时就会重新从磁盘加载到Buffer_Pool缓冲池里,这样当高峰期间,性能就会变得很差,连接数就会很高. 在MySQL5.6里, ...
- 复习:使用HTML编写简单程序
今天我试着用HTML编写了九九乘法表 代码如下 浏览器显示如下 2.输出静夜思 代码如下 2.浏览器显示
- chrome innerHTML赋值
例如: document.getElementById('id').innerHTML=data; 如果data的值是: "<div><tr><td>1& ...
- fm 讲解加代码
转自: 博客 http://blog.csdn.net/google19890102/article/details/45532745/ github https://github.com/zhaoz ...
- 《你不知道的JavaScript下卷》知识点笔记
1. [1, 2, 3] == [1, 2, 3] 返回false [1, 2, 3] == “1, 2, 3” 返回true 2. 如果 < 比较的两个值都是字符串, 就像在b < c中 ...
- idea下maven项目打包
近使用idea运行maven需要打包上传tomcat服务器.但是网上一直零零碎碎的....自己记录一下.以防后面忘记 1.idea中.file →Project Structure(快捷键Ctrl+S ...