• 51nod 1179 最大的最大公约数


    一直Runtime error  

    后来发现数组开小了 调了半天

    大概两种写法吧

    第一种是枚举每个值 把他的因子都记录  最后从最大的因子 倒着数 这样子

    #include<bits/stdc++.h>
    using namespace std;
    const int maxn = 1000000+100;
    int s[maxn];
    int t[maxn];
    
    int main ()
    {
        int n;
        scanf("%d",&n);
    
        for(int i=1;i<=n;i++)
            scanf("%d",&s[i]);//mx=max(mx,s[i]);
        //t[1] = 2;//如果没有的话就是1了
        int mx = 1;
        for(int i=1;i<=n;i++)
        {
            int r = sqrt(s[i]);
    
            for(int j=1;j<=(r+1);j++)
            {
                if(s[i]%j==0)
                {
                    t[j]++;
                    t[s[i]/j]++;
                    mx =max(mx,max(j,s[i]/j));
                    //while(s[i]%j==0)
                    //{
                      //  s[i]/=j;
                   // }
                    //printf("%d ",j);
                }
            }
            //puts("");
        }
        for(;mx>=1;mx--)
            if(t[mx]>=2)
            {
                printf("%d
    ",mx);
                return 0;
            }
    
    }

    第二种 类似素数筛 的 一种筛法  不过是倒着来的

    #include<bits/stdc++.h>
    using namespace std;
    const int maxn = 1000000+100;
    //int s[maxn];
    int t[maxn];
    
    int main ()
    {
        int n;
        scanf("%d",&n);
        int mx =0;//记录最大的
        for(int i=1;i<=n;i++)
        {
            int s;
            scanf("%d",&s);
            mx = max(s,mx);
            t[s]++;
        }
        int i=mx;
    
        //cout<<mx<<endl;
        for( ;i>=1;i--)//用到了筛法类似的东西
        {
            int sum=0;
            for(int j=i;j<=mx;j+=i)
            {
                sum += t[j];
                if(sum>=2)
                    break;
            }
            if(sum>=2)
                break;
        }
        //for(int i=1;i<=25;i++)
            //printf("%d ",t[i]);
        printf("%d
    ",i);
    }
  • 相关阅读:
    [转]java常量池理解总结
    设计数据库时使用外键吗
    ajax 下载文件
    CentOS6.4配置163的yum源
    Xms Xmx PermSize MaxPermSize 区别
    [转]基于java的程序OutOfMemory问题的解决及Xms/Xmx/Xss的解释和应用
    Java Web Services面试
    java 单例模式
    Spring和MyBatis整合
    Spring核心概念
  • 原文地址:https://www.cnblogs.com/Draymonder/p/7403049.html
Copyright © 2020-2023  润新知