zoukankan      html  css  js  c++  java
  • BestCoder Round #38 1002 Greatest Greatest Common Divisor 筛法

    题意:求所有数中任意两个数最大公约数的最大值。

    解题思路:先用筛法把所有的数的因子筛出来。时间复杂度是nlogn,然后直接判断就行了。

    解题代码:

     1 // File Name: b.cpp
     2 // Author: darkdream
     3 // Created Time: 2015年04月18日 星期六 19时12分04秒
     4 
     5 #include<vector>
     6 #include<list>
     7 #include<map>
     8 #include<set>
     9 #include<deque>
    10 #include<stack>
    11 #include<bitset>
    12 #include<algorithm>
    13 #include<functional>
    14 #include<numeric>
    15 #include<utility>
    16 #include<sstream>
    17 #include<iostream>
    18 #include<iomanip>
    19 #include<cstdio>
    20 #include<cmath>
    21 #include<cstdlib>
    22 #include<cstring>
    23 #include<ctime>
    24 #define LL long long
    25 
    26 using namespace std;
    27 int num[100005];
    28 vector<int>yz[100005] ;  
    29 void sai()
    30 {
    31    for(int i = 2;i <= 100000 ;i ++)
    32    {
    33         int k = i ;
    34         while(k <= 100000)
    35         {
    36            yz[k].push_back(i);
    37            k += i ; 
    38         }
    39    }
    40 }
    41 int hs[100005];
    42 int main(){
    43     sai();
    44     int t; 
    45     scanf("%d",&t);
    46     for(int ca = 1; ca <= t; ca ++){
    47         memset(hs,0,sizeof(hs));
    48         hs[1] = 2; 
    49         int n ; 
    50         scanf("%d",&n);
    51         for(int i =1 ;i <= n;i ++)
    52         {
    53             scanf("%d",&num[i]);
    54             for(int j =0 ;j < yz[num[i]].size(); j ++){
    55                 hs[yz[num[i]][j]] ++ ; 
    56             }
    57         }
    58         printf("Case #%d: ",ca);
    59         for(int i = 100000; i >= 1 ;i --){
    60             if(hs[i] >= 2 )
    61             {
    62                 printf("%d
    ",i);
    63                 break;
    64             }
    65 
    66         }
    67          
    68     }
    69 return 0;
    70 }
    View Code
  • 相关阅读:
    主进程与渲染进程的异同
    Electron node integration enabled 设置
    JS-函数总结
    JS-变量、作用域、垃圾回收机制总结
    python进阶知识笔记
    高级抽象函数
    mac支持的文件系统
    生成器generator & 迭代器iterator
    磁盘如何做才能让系统识别
    winPE盘能做什么
  • 原文地址:https://www.cnblogs.com/zyue/p/4438776.html
Copyright © 2011-2022 走看看