zoukankan      html  css  js  c++  java
  • ACM——完数

    完数

    时间限制(普通/Java):1000MS/3000MS          运行内存限制:65536KByte
    总提交:1930            测试通过:413

    描述

    自然数中,完数寥若晨星,请在从1到某个整数范围中打印出所有的完数来。所谓“完数”是指一个数恰好等于它的所有不同因子之和。例如,6是完数,因为6=1+2+3。而24不是完数,因为24≠1+2+3+4+6+8+12=36。

    输入

    输入数据中含有一些整数n(1<n<10000)。

    输出

    对于每个整数n,输出所有不大于n的完数。每个整数n的输出由n引导,跟上冒号,然后是由空格开道的一个个完数,每个n的完数列表应占独立的一行。

    样例输入

    100
    5000

    样例输出

    100: 6 28
    5000: 6 28 496

    #include <iostream>
    #include <vector>
    using namespace std;
     
    int main()
    {
        vector<int> a;
        for(int i=2;i<10000;i++)
        {
                int sum=1;
                for(int j=2;j<=i/2;j++)
                {
                        if(i%j==0) sum=sum+j;
                }
                if(sum==i) a.push_back(i);
        }
         
        int n;
        while(cin>>n)
        {
                     cout<<n<<":";
                     for(int i=0;i<a.size();i++)
                     {
                             if(a[i]<=n) cout<<" "<<a[i];
                     }
                     cout<<endl;
        }
        return 0;
    }
  • 相关阅读:
    CF343D Water Tree
    CF340B Maximal Area Quadrilateral
    测试环境/生产环境,接口地址配置
    json-server MOCK方案
    vscode prettier保存代码时自动格式化
    蓝鲸6.0前置准备
    nginx日志提取案列
    蓝鲸模拟考试
    部署维护
    第一次模拟考
  • 原文地址:https://www.cnblogs.com/BasilLee/p/3789957.html
Copyright © 2011-2022 走看看