您的位置:首页 > Web前端

poj 1528 Perfection

2013-11-04 13:58 323 查看
这道题很水,主要就是注意一下当 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;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: