您的位置:首页 > 其它

poj2140---herd sums

2015-06-10 15:39 183 查看
#include<stdio.h>
#include<stdlib.h>

int main()
{
int n,cnt=0,i,j;
scanf("%d",&n);
for(i=1;i <= n/2+1;i++)
{
int sum=0;
for(j=i;;j++)
{
sum+=j;
if(sum == n)
{
cnt++;
break;
}
if(sum>n)
break;
}
}
printf("%d\n",cnt+1);
return 0;
}
//我不能分析出i为什么<=n/2+1,但是从n/2+1之后的序列,如果是单个,那么比n小,如果是连续的序列就都比n大,所以没必要再去遍历后面的序列
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: