题目描述
太不容易了,终于写对了。
1.注意第一行是n,不是x
2.x要在while循环里引入
3.注意时间超时,要优化代码
4.注意两个因子相等的情况
样例
#include <iostream>
using namespace std;
int main()
{
int i,n;
cin>>n;
while(n--)
{
int x;
cin>>x;
int sum=0;
for(i=1;i*i<x;i++)
{
if(x%i==0)
{
if(i<x)sum+=i;
if(i!=x/i&&x/i<x)sum+=x/i;
}
}
if(sum==x)
{cout<<x<<" "<<"is perfect"<<endl;}
else
{cout<<x<<" "<<"is not perfect"<<endl;}
}
return 0;
}
算法1
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla
算法2
(暴力枚举) $O(n^2)$
blablabla
时间复杂度
参考文献
C++ 代码
blablabla