本文分享的必刷题目是从蓝桥云课、洛谷、AcWing等知名刷题平台精心挑选而来,并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构,旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。
欢迎大家订阅我的专栏:算法题解:C++与Python实现!
附上汇总贴:算法竞赛备考冲刺必刷题(C++) | 汇总
【题目来源】
洛谷:B2127 求正整数 2 和 n 之间的完全数 - 洛谷
【题目描述】
求正整数2 22和n nn之间的完全数(一行一个数)。
完全数:对于一个自然数,所有比它小的所有因数之和,等于它本身,它就是个完全数。如6 = 1 + 2 + 3 6=1+2+36=1+2+3。
【输入】
输入n ( n ≤ 10000 ) n(n \le 10000)n(n≤10000)。
【输出】
一行一个数,按由小到大的顺序。
【输入样例】
10【输出样例】
6【算法标签】
《洛谷 B2127 求正整数 2 和 n 之间的完全数》 #函数与递归#
【代码详解】
#include<bits/stdc++.h>usingnamespacestd;intn;// 计算x的所有真因子之和intcalc(intx){intres=0;for(inti=1;i<x;i++)// 从1到x-1if(x%i==0)// 如果i是x的因子res+=i;// 累加到结果returnres;}intmain(){cin>>n;// 输入上限n// 从2到n枚举每个数for(inti=2;i<=n;i++)if(i==calc(i))// 如果i等于它的真因子之和cout<<i<<endl;// 输出i(完全数)return0;}【运行结果】
10 6