#include <iostream> #include <vector> #include <map> using namespace std; int sum(int i){//因式相加 int sum=0; for(int j=1;j<i;j++){ if(i%j==0){ sum+=j; } } return sum; } int main() { vector<int> e,g; for(int i=2;i<=60;i++){ if(sum(i)==i) e.push_back(i); if(sum(i)>i) g.push_back(i); } cout<<"E: "; for(int i=0;i<e.size();i++){ cout<<e[i]<<' '; } cout<<"G: 2 "; for(int i=0;i<g.size();i++){ cout<<g[i]<<' '; } } // 64 位输出请用 printf("%lld")