题目描述:

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

解题思路:刚开始时,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. linux 启动2个tomcat,在LINUX中启动多个TOMCAT
  2. java开发环境配置环境变量_3. Java开发环境的搭建:安装JDK,配置环境变量
  3. 今天 我的博客正式建立了
  4. java正三角形程序怎么写,java实现正三角形和到正三角形
  5. Delphi中Tobject与Variant之间的转换
  6. 深入理解Golang 编程思维和工程实战
  7. 物理层、数据链路层网络设备工作原理
  8. JAVA_Collection容器
  9. android 服务端 漏洞,安卓漏洞 CVE 2017-13287 复现详解-
  10. 监控提示服务器状态变更,服务器故障排除与状态监控
  11. 【NLP】一文了解词性标注CRF模型
  12. 案例分析:传统媒体如何借力微信平台推广
  13. 康乐忆享|志愿者心得精选——张凌旭
  14. 程序员常用的博客网站
  15. 湖南大学计算机专业推免生,湖南大学2018年招收推荐免试攻读研究生简章
  16. java利用复循环洗牌算法_实现不重复取数两种算法(洗牌算法)
  17. HMM隐马尔可夫模型详解
  18. Ae 效果快速参考:杂色和颗粒
  19. 文本关键词的提取算法实验
  20. js弹幕脚本(基于油猴)

热门文章

  1. Delphi 关键字详解[整理于 橙子 的帖子]
  2. addprefix --Makefile加前缀函数
  3. 通过一道题目来理解互斥和同步
  4. 汇编中ah,al,ax;es,cs,ds,ss;
  5. 「 每日一练,快乐水题 」1791. 找出星型图的中心节点
  6. Servlet、Tomcat、 SpringMVC 之间的关系
  7. Maven -- group、artifact、package
  8. NIO核心之Channel,Buffer和Selector简介
  9. Java throw:异常的抛出
  10. Algorand 共识算法 BA* 入门