• TYVJ P1020 寻找质因数


    做题记录:2016-08-08 

    描述

    给出N个数字,试求质因数最大的数字。

    输入格式

    第一行,一个整数N,表示数字个数。
    接下来N行,每行一个整数A_i,表示给出的数字。

    输出格式

    一个整数,表示质因数最大的数字。

    测试样例1

    输入


    36 
    38 
    40 
    42

    输出

    38

    备注

    N <= 5000 , A_i <= 20000

    代码

     1 #include<iostream>
     2 #include<cmath>
     3 #include<cstdio>
     4 #define N 20001
     5 using namespace std;
     6 int n,ans,mx;
     7 bool a[N];
     8 void primelist(){//筛法 ,0为质数 
     9     a[0]=a[1]=1;
    10     for(int i=2;i<N;i++)
    11         if(!a[i])
    12             for(int j=i*2;j<N;j+=i)
    13                 a[j]=1;
    14 }
    15 
    16 int main(){
    17     freopen("01.txt","r",stdin);
    18     primelist();
    19     scanf("%d",&n);
    20     for(int i=1;i<=n;i++){
    21         int x;
    22         scanf("%d",&x);
    23         for(int j=x;j>0;j--){
    24             if((x%j==0&&!a[j])||j==1){
    25                 if(j>mx){
    26                     mx=j;
    27                     ans=x;
    28                 }
    29                 break;
    30             }
    31         }
    32     }
    33     printf("%d",ans);
    34     return 0;
    35 }
    版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!
  • 相关阅读:
    Variational Autoencoders and Nonlinear ICA: A Unifying Framework
    各层的特征的差异性
    TriggerBN +
    Exponential family of distributions
    个人加分项
    对老师的建议
    2021.6.19
    2021.6.18
    2021.6.17
    2021.6.16
  • 原文地址:https://www.cnblogs.com/radiumlrb/p/5761496.html
Copyright © 2020-2023  润新知