当前位置: 首页 > news >正文

[考研机试] KY20 完数VS盈数 清华大学复试上机题 C++实现

描述

一个数如果恰好等于它的各因子(该数本身除外)子和,如:6=3+2+1。则称其为“完数”;若因子之和大于该数,则称其为“盈数”。 求出2到60之间所有“完数”和“盈数”。

输入描述:

题目没有任何输入。

输出描述:

输出2到60之间所有“完数”和“盈数”,并以如下形式输出: E: e1 e2 e3 ......(ei为完数) G: g1 g2 g3 ......(gi为盈数) 其中两个数之间要有空格,行尾不加空格。

思路:

对于要求范围内(2-60)的每一个数 i 进行遍历,对于从1开始到小于 i 的范围遍历,如果是 i 的因数就累加,最后判断因数的和与 i 的关系,分别保存到不同的vector中,按照题目要求输出。

源代码:

#include <iostream>
#include<vector>
using namespace std;int main() {vector<int> vectorE; //保存完数vector<int> vectorG; //保存盈数for(int i=2; i<=60; i++){ //遍历int res = 0;//对小于i的数遍历for(int j=1; j<i; j++){ if(i%j == 0){res += j;}}if(res == i){vectorE.push_back(i);}if(res > i){vectorG.push_back(i);}}cout<<"E:";for(auto it : vectorE){cout<<" "<<it;}cout<<endl;cout<<"G:";for(auto it : vectorG){cout<<" "<<it;}cout<<endl;return 0;
}
// 64 位输出请用 printf("%lld")

提交结果:

 

http://www.lryc.cn/news/115196.html

相关文章:

  • re学习(30)攻防世界-hackme(代码复原2)
  • Go Windows下开发环境配置(图文)
  • 【人工智能概述】python妙用 __str__()
  • android kernel移植5-RK3568
  • C++——string类介绍
  • 教雅川学缠论07-中枢实战众泰汽车000980
  • REDIS主从配置
  • 【测试】软件测试工具JMeter简单用法
  • 五个授权关键,为智能驾驶量产赋能
  • 【代码随想录-Leetcode第三题:977. 有序数组的平方】
  • [运维|中间件] Apache APISIX Dashboard部署(持续踩坑更新。。。)
  • Vue中watch监听属性新旧值相同问题解决方案
  • awk案例练习
  • Debian 12.1 正式发布
  • neo4j清空数据库
  • SpringBoot整合Mybatis-Plus
  • 在langchain中使用自定义example selector
  • pytest常用执行参数详解
  • 本地项目如何连接git远程仓库
  • 力扣 494. 目标和
  • Maven-搭建私有仓库
  • PostgreSql 参数配置
  • 【BMC】OpenBMC开发基础2:修改原有程序
  • 2012年数学建模竞赛脑卒中发病环境因素分析及干预日期数据处理代码
  • Merge和Rebase的区别
  • [RTKLIB]模糊度固定相关问题(二)
  • QtAV for ubuntu16.04
  • MFC 文件读写包括字符串的结构体
  • 在家构建您的迷你聊天Chat gpt
  • pytest自动化测试框架之断言