题解 | 完数VS盈数:使用STL库中动态数组求解

#include <iostream>
#include <vector>
using namespace std;

int main() {
    vector<int> Enum;  //动态数组,存储完数
    vector<int> Gnum;  //存储盈数
    vector<int> sum;  //存储因子
    for(int n=2; n<=60; n++)
    {
        sum.clear();  //每次循环先清空
        for(int i=1; i<n; i++)
        {
            if(n%i==0)  //若是因子就存入
            {
                sum.push_back(i);
            }
        }
        int num=0;
        for(int j=0; j<sum.size(); j++)
        {
            num+=sum[j];
        }
        if(num==n)  //若是完数就存入
        {
            Enum.push_back(n);  
        }
        else if(num>n)  //若是盈数就存入
        {
            Gnum.push_back(n);
        }
    }
    cout << 'E' << ':' << ' ';
    for(int m=0; m<Enum.size(); m++)
    {
        cout << Enum[m] << ' ';
    }
    cout << endl;
    cout << 'G' << ':' << ' ';
    for(int n=0; n<Gnum.size(); n++)
    {
        cout << Gnum[n] << ' ';
    }
}
// 64 位输出请用 printf("%lld")

#考研复试机试上机个人解析##考研#
全部评论

相关推荐

菜菜狗🐶:双非之光
找工作,你会甘心进小厂还...
点赞 评论 收藏
分享
程序员花海:实习和校招简历正确格式应该是教育背景+实习+项目经历+个人评价 其中项目经历注意要体现业务 实习经历里面的业务更是要自圆其说 简历模板尽可能保持干净整洁 不要太花哨的
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务