题解 | #完全数计算#
完全数计算
https://www.nowcoder.com/practice/7299c12e6abb437c87ad3e712383ff84
#include <iostream> #include<vector> using namespace std; bool perfect(int n) { //判断该数是否为完全数 vector<int> a; if (n == 1) return false; for (int i = 1; i < n; i++) { if (n % i == 0) { a.push_back(i); } } int sum = 0; for (int i = 0; i < a.size(); i++) { sum += a[i]; } if (sum == n) return true; else return false; } int main() { int n; cin >> n; int sum = 0; for (int i = 1; i <= n; i++) { if (perfect(i)) { sum++; } } cout << sum; return 0; }