#include <bits/stdc++.h> 
using namespace std; 

int w(int x)
{
	int y = 0;
	for(int i=1;i<=x-1;i++)if(x%i==0) y+=i;
	
	
	
	return y;
	
	
	
}

int main() 
{
	int a;
	cin>>a;
	for(int i=1;i<=a-1;i++)
	{
		if(i==w(i))cout<<i << endl;
		
		
	}
	
	
	
	
	
	
 	return 0;
}

1 comments

  • 思路就是先创建一个能算因子和的自定义函数,然后从2到n找因子和等于它本身的数,找到打印,接着找下一个因子等于它本身的数。

    • 1