zoukankan      html  css  js  c++  java
  • 月老 1215__________________________________________

    #include<stdio.h>//心累,感觉没法优化了......
    #include<math.h>
    int a[500010];
    void wap();
    int main()
    {
        int n,x;
        wap();
        scanf("%d",&n);
        while(n--)
        {
            scanf("%d",&x);
            printf("%d
    ",a[x]);
        }
    }
    void wap()
    {
        int i,j,s;
        for(i=2;i<500008;i++)
        {
            for(s=0,j=2;j<=sqrt(i);j++)
            {
                if(i%j==0)
                {
                    s=s+j+i/j;
                    if(j==sqrt(i))
                        s=s-i;
                }
            }
            a[i]=s+1;
        }
    }
    //因为这里的数字比较大,所以你能进行太大的运算,只能用+ -法..
    //用好多方法都超时,最后看了别人的微博,看到了这个办法.
    //这个办法和那个闰年生日,用的是一个原理.
    //下次一定要注意
    #include<stdio.h>
    int a[500010];
    void wap();
    int main()
    {
        int t,n;
        wap();
        scanf("%d",&t);
        while(t--)
        {
            scanf("%d",&n);
            printf("%d
    ",a[n]);
        }
        return 0;
    }
    void wap()
    {
        int i,j;
        for(i=1;i<=500008/2;i++)
        {
            for(j=2*i;j<500008;j=j+i)
            {
                a[j]=a[j]+i;
            }
        }
    }
    
    
    
    
    
  • 相关阅读:
    jmeter配置mysql数据库步骤
    postman断言分析
    API测试工具postman使用总结
    量化投资与Python之NumPy
    量化投资与Python
    排序
    node.js
    VUE之搭建脚手架
    VUE之ECMAScript6(es6)
    VUE之随笔小总结1
  • 原文地址:https://www.cnblogs.com/A-FM/p/5020325.html
Copyright © 2011-2022 走看看