zoukankan      html  css  js  c++  java
  • 1179 最大的最大公约数

    题目来源: SGU
    基准时间限制:1 秒 空间限制:131072 KB 分值: 40 难度:4级算法题
    给出N个正整数,找出N个数两两之间最大公约数的最大值。例如:N = 4,4个数为:9 15 25 16,两两之间最大公约数的最大值是15同25的最大公约数5。
     
    Input
    第1行:一个数N,表示输入正整数的数量。(2 <= N <= 50000)
    第2 - N + 1行:每行1个数,对应输入的正整数.(1 <= S[i] <= 1000000)
    Output
    输出两两之间最大公约数的最大值。
    Input示例
    4
    9
    15
    25
    16
    Output示例
    5



    //注意到 S[i] 的值比较小,对于所有的数,求出所有的约数,n*√ ̄n , 然后扫一遍即可
     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 #define INF 0x3f3f3f3f
     4 #define LL long long
     5 #define MX 50005
     6 
     7 int n;
     8 int yin[1000005];
     9 
    10 int main()
    11 {
    12     scanf("%d",&n);
    13     int mx=0;
    14     for (int i=1;i<=n;i++)
    15     {
    16         int x;
    17         scanf("%d",&x);
    18         mx = max(x,mx);
    19         int ut = sqrt(x);
    20         for (int j=1;j<=ut;j++)
    21         {
    22             if (x%j==0)
    23             {
    24                 yin[j]++;
    25                 yin[x/j]++;
    26             }
    27         }
    28     }
    29     for (int j=mx;j>=1;j--)
    30     {
    31         if (yin[j]>1)
    32         {
    33             printf("%d
    ",j);
    34             return 0;
    35         }
    36     }
    37     return 0;
    38 }
    View Code


  • 相关阅读:
    ajax 前台返回后台传递过来的数组
    js中push的用法
    split 的用法
    ckeditor上传图片
    FTP安装配置
    批量删除.svn文件
    Ext flex属性
    Extjs3 主题样式
    Ext.apply与Ext.applyIf
    SharePoint2010 Office Web Apps
  • 原文地址:https://www.cnblogs.com/haoabcd2010/p/7623799.html
Copyright © 2011-2022 走看看