#P2140. Herd Sums

    ID: 1141 传统题 1000ms 256MiB 尝试: 1 已通过: 1 难度: 10 上传者: 标签>难度入门其他双指针扫描USACO 2003 March Orange

Herd Sums

描述

农夫约翰牛群中的奶牛都被编了号,并且打上了从1到NN1<=N<=10,000,0001 <= N <= 10,000,000)的连续整数的烙印。当奶牛来到谷仓挤奶时,它们总是按照从1到NN的顺序依次到来。

农夫约翰在大学时主修数学,并且热爱数字,他经常寻找数字规律。他注意到,当他的牛群中恰好有15头奶牛时,恰好有四种方式可以使任意一组一头或多头连续奶牛身上的数字之和等于15(与奶牛的总数相同)。这四种方式分别是:15、7 + 8、4 + 5 + 6 以及 1 + 2 + 3 + 4 + 5。

当牛群中的奶牛数量为10时,他能通过对连续奶牛身上的数字求和得到10的方式数量就减少到了2种:即1 + 2 + 3 + 4 和 10。

编写一个程序,计算出农夫约翰能够通过对连续奶牛身上的数字求和得到NN的方式数量。请不要使用预计算的方法来解决这个问题。

输入

  • 第1行:一个整数NN

输出

  • 第1行:一个整数,表示连续奶牛编号之和等于NN的方式数量。

输入数据 1

15

输出数据 1

4

来源 美国计算机奥林匹克竞赛(USACO)2003年3月 橙色组