100 #P1304. *【动态规划:区间一维一边推】数的计数[NOIP普及组2001]

*【动态规划:区间一维一边推】数的计数[NOIP普及组2001]

【题意】

给出正整数 nn,要求按如下方式构造数列:

  1. 只有一个数字 nn 的数列是一个合法的数列。

  2. 在一个合法的数列的末尾加入一个正整数,但是这个正整数不能超过该数列最后一项的一半,可以得到一个新的合法数列。

请你求出,一共有多少个合法的数列。两个合法数列 a,ba,b 不同当且仅当两数列长度不同或存在一个正整数 iai \leq |a|,使得 aibia_i \neq b_i

【输入格式】

输入只有一行一个整数,表示 nn

【输出格式】

输出一行一个整数,表示合法的数列个数。

6
6

【样例解释】

满足条件的数列为:

  • 66
  • 6,16, 1
  • 6,26, 2
  • 6,36, 3
  • 6,2,16, 2, 1
  • 6,3,16, 3, 1

【数据规模与约定】

对于全部的测试点,保证 1n1031 \leq n \leq 10^3