题目描述
“国王的金币”作为一道初学者的算法题,相信大家都做过吧~国王会给骑士连续 $i$ 天每天 $i$ 枚金币,计算在前k天里,骑士一共收获了多少枚金币。大家水题是做爽了,骑士钱也拿到了,但是国王不开心了!国王是有钱,但是谁经得住发 $10^{4}$ 天啊!
于是国王偷偷让公主去向骑士要点钱回来……调皮的公主每天都会向骑士去要点零花钱,骑士虽然叫苦不迭,但是碍于是公主的请求,也没办法拒绝。
公主接受了国王的一个 $n$ 天回款计划,在这 $n$ 天里,每天需要国王决定一个不少于 1 元、不超过 $n$ 元的金额,让公主去向骑士索要。
为了防止被骑士怀疑,在这 $n$ 天里,如果某一天公主要了 $a_{i}$ 元,那么在接下来 $a_{i}$ 天都要索要同样的金额,即 $a_{i + 1} = \dots = a_{i + a_{i}}$;在 $n$ 天之后,公主每天索要的金额不能再变化,即 $a_{n + 1} = a_{n + 2} = \dots = a_{+\infty}$
国王也不要求要回来最多的钱,国王只想知道有多少种要钱的方案,作为军师的你被迫结下了这个任务。
请你计算出有多少种回款计划的方案,公主能够一直向骑士索要零花钱并且不被怀疑。
输入
输入一行一个整数 $n$,表示回款计划的天数,以及每天金额的限制。
输出
输出一行一个整数,输出回款计划方案对 $10^{9} + 7$ 取模的结果。
样例输入1
复制
3
样例输出1
复制
15
提示
对于 $100 \%$ 的数据,$1 \leq n\leq{10^6}$。
对于给定的样例,15种方案分别为:
111
112
113
121
122
123
131
132
133
211
222
233
311
322
333
来源/分类
ADPC