阅读827 返回首页    go 阿里云 go 技术社区[云栖]


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

  上一篇:go 软件工程之五个层次四个部分
  下一篇:go 精通css(6)-图像背景那些事儿