题目描述:

题目大意:找出具有最大素数因子的整数。如果有不止一个,则输出在输入文件中出现最早的一个。

解题思路:刚开始时,p数组中的元素全为0,刚开始对于素数 i,p[i]=0,用一个for循环,将是素数 i 的倍数的数 的在数组p中的值全部赋值为 i;

如:第一轮:2为素数,p[2]=0,p[4]=2,p[6]=2,p[8]=2......p[2*n]=2;

第二轮:3为素数,  p[3]=0,p[6]=3,p[9]=3,p[12]=3......p[3*n]=3;

第...轮:i为素数,p[i]=0,p[i+n*i]=i;

再如下列测试案例中 m=38时,在第一轮中,2为素数,38是2的倍数,所以p[38]=2;在第18轮(即i=19)时,19为素数,而38是19的倍数,所以p[38]更新为19

代码实现:

#include<stdio.h>
#include<iostream>
const int MAX=20005;
int p[MAX];
using namespace std;
int main()
{int n,s,m,maxn;int i,j;p[1]=1;for(i=2;i<MAX;i++){if(p[i]==0)for(j=i;j<MAX;j+=i)//这一段代码不断实现对p数组进行更新p[j]=i;}while(~scanf("%d",&n)){maxn=-1;while(n--){scanf("%d",&m);if(p[m]>maxn){maxn=p[m];s=m;}}printf("%d\n",s);}return 0;
}

转载于:https://www.cnblogs.com/LJHAHA/p/9991791.html

素数筛选-hdu2710相关推荐

  1. python使用集合实现筛选法求素数-python素数筛选法浅析

    原理: 素数,指在一个大于1的自然数中,除了1和此整数自身外,不能被其他自然数整除的数.在加密应用中起重要的位置,比如广为人知的RSA算法中,就是基于大整数的因式分解难题,寻找两个超大的素数然后相乘作 ...

  2. 素数筛选以及优化分析

    素数筛选法的思想:对于不超过N的每个正整数,删除2P,3P,4P--,当处理完所有数之后,还没有被删除的就是素数. 按照上述思想写成的简单筛选法代码如下: memset(vis,o,sizeof(vi ...

  3. C语言素数筛选法(prime seive) 算法(附完整源码)

    素数筛选prime seive算法 C语言素数筛选prime seive算法完整源码(定义,实现,main函数测试) C语言素数筛选prime seive算法完整源码(定义,实现,main函数测试) ...

  4. 因子和(类素数筛选法)

    (忙着A题,总结会慢慢跟上~) 1409: 因子和 Time Limit: 1 Sec Memory Limit: 128 MB [Submit][Status][Web Board] Descrip ...

  5. 51nod 1536不一样的猜数游戏 思路:O(n)素数筛选法。同Codeforces 576A Vasya and Petya‘s Game。

    废话不多说,先上题目. 51nod Codeforces 两个其实是一个意思,看51nod题目就讲的很清楚了,题意不再赘述. 直接讲我的分析过程:刚开始拿到手有点蒙蔽,看起来很难,然后......然后 ...

  6. pku 2635 The Embarrassed Cryptographer 数论——素数筛选法+模拟大数除法

    http://poj.org/problem?id=2635 因为给定的k是两个素数的乘机,所以该数所包含的因子是{1,K,p,q}假设k = p*q p,q为素数,所以只要从小到大枚举小于L的素数, ...

  7. 埃氏筛法(素数筛选)

    代码如下: //Wecccccccc //2021.1.6 #include <iostream> using namespace std; int vis[100000]; //0为素数 ...

  8. 素数筛选法(埃氏筛 欧拉筛)

    质数筛选法 文章目录 质数筛选法 前言 一.埃氏筛 O(nloglogn)O(nloglogn)O(nloglogn) 二.欧拉筛O(n)O(n)O(n) 总结 前言 当需要大范围内的素数时,例如1e ...

  9. PAT甲题题解-1059. Prime Factors (25)-素数筛选法

    用素数筛选法即可. 范围long int,其实大小范围和int一样,一开始以为是指long long,想这就麻烦了该怎么弄. 而现在其实就是int的范围,那难度档次就不一样了,瞬间变成水题一枚,因为i ...

最新文章

  1. 云端智能芯片GPGPU与编译器
  2. 《android基于andFix的热修复方案》实战篇
  3. Expression Bland 入门视频(五) 了解对象面板和属性面板
  4. Quartz 2D编程笔记
  5. 致力推广 Vim 的那个程序员走了,Vim 之父:我要把 9.0 版献给他
  6. python中superclass是什么_Python中super()函数简介及用法分享
  7. 利用jQuery如何获取当前被点击的按钮
  8. python的解释器怎么打开_怎么启动python解释器
  9. python使用CV2剪切图片
  10. linux 备份命令
  11. Redis入门官方文档
  12. Netty(四十一) - 心跳(heartbeat)源码剖析
  13. 【面试题】网易互娱(游戏)2021校园招聘在线笔试 - 服务端开发工程师[螺旋矩阵]
  14. html控制台随机数取整,获取随机数、浮点数取整方法
  15. 万字拆解自嗨锅:造价近百万的直播间,是单场直播GMV破100万的法门吗?
  16. 英语四六级详细报名步骤来啦!
  17. install quantopian时出现No module named pip.req的解决办法
  18. tcpdump(一)
  19. 常见的传输介质的种类和性能,你知道嘛?
  20. 即第1个字母变成第26个字母,第i个字母变成第26-i+1个字母,非字母字符不变。要求编程序将密码变回原文,并输出密码和原文

热门文章

  1. 一文读懂什么是C++移动语义《一》
  2. JAVA去掉指定字符
  3. MySQL查询对NULL的处理
  4. python 图片上传到minio时,在minio不是显示图片格式
  5. 国家电网和南方电网还傻傻分不清?
  6. 开机启动脚本/etc/init.d/rcS
  7. java程序并行机制_Java语言具有多种优点和特点,下列选项中,______反映了Java程序并行执行机制的特点。A.多线程B.健...
  8. 【译】 Stealing the funds of all HTC EXODUS 1 users (HTC 区块链钱包安全漏洞分析)
  9. 【译】Why Decentralized AI Matters Part III: Technologies
  10. Android 进程保活手段分析