• HDU 2710 Max Factor(数论,素数筛法)


    #include<iostream>
    #include<stdio.h>
    #include<string.h>
    #include<cmath>
    using namespace std;
    const int maxn=20017;
    int s[maxn];
    int main()
    {
        int n,m;
        int i,j;
        memset(s,0,sizeof(s));
        /*s[1]=1;//埃筛素数
        for(i=2; i<maxn; i++)
        {
            if(s[i]==0)
            {
                for(j=i; j<maxn; j+=i)
                {
                    s[j]=i;//i表示最大素因子
                }
            }
        }*/
        /*模版:for(i=2; i<maxn; i++)//快筛素数
        {
            if(s[i]==0)
            {
                for(j=2; i*j<maxn; j++)//只要乘以i就一定不是素数
                {
                    s[i*j]=1//不是素数标为1
                }
            }
        }*/
    
        for(i=2; i<maxn; i++)//快筛具体应用
        {
            if(s[i]==0)
            {
                for(j=1; i*j<maxn; j++)
                {
                    s[i*j]=i; //i表示最大素因子
                }
            }
        }
        while(~scanf("%d",&n))
        {
            int ans;
            int maxx=-1;
            for(i=0; i<n; i++)
            {
                scanf("%d",&m);
                if(s[m] > maxx)
                {
                    maxx = s[m];
                    ans = m;
                }
            }
            printf("%d
    ",ans);
        }
    }
    

      

  • 相关阅读:
    XML相关知识点
    MLPlatform开发日志
    1.0 es6 箭头函数
    基本数学概念
    4.4 thymeleaf使用补充
    vim操作手册
    eclise创建后台项目
    正则表达式
    数据库隔离级别
    1. gradle的使用教程
  • 原文地址:https://www.cnblogs.com/Roni-i/p/7205986.html
Copyright © 2020-2023  润新知