poj 1528 Perfection
這道題很水,主要就是注意一下當 n==1 時候的情況就可以了。。。
AC的代碼:
#include<iostream>
#include <math.h>
int main()
{
printf("PERFECTION OUTPUT\n");
int n,i;
while(scanf("%d",&n) && n!=0)
{
printf("%5d ",n);
if(n==1)
{
printf("DEFICIENT\n");
continue;
}
int sum=1,limit=(int)sqrt((double)n);
for(i=2;i<=limit;i++)
{
if(n%i==0)
sum+=i+n/i;
}
if(sum==n)
printf("PERFECT\n");
else if(sum>n)
printf("ABUNDANT\n");
else
printf("DEFICIENT\n");
}
printf("END OF OUTPUT\n");
return 0;
}
最後更新:2017-04-03 14:54:06