自从开学之后就开始忙碌了起来,总以为下个月就可以闲下来,但是总发现下个月会更下忙碌。CGY 是一个心理承受能力良好的人,从来心态不炸,他擅长把压力把转化为前进的动力。他受到 1,2,3,4,5 点压力时,分别会获得 2,3,5,6,8 点动力。当受到 6 点以上(包含 6 点)的压力时, CGY 获得的动力就会发生质变,其值为它之前五种情况的值之和。例如,受到 6,7 点压力时,分别可以获得 24,46 点动力。现在请你编程求出他受到 n-1 点和 n 点压力时能获得的动力数,由于结果可能会很大,所以结果需要对 10^9+7 求模。
输入
输入包含多行,每行包括一个整数 n \ (2 \leq n \leq 10^{15}),表示 CGY 受到的压力数。当输入为 0
时,结束输入(0
不用处理)。需要处理的数据组数不超过 10^4。
输出
对于每行输入,对应输出一行 CGY 受到 n-1 点和 n 点压力时能获得的动力数,结果需要对 10^9+7 求模,中间以空格隔开。
样例
标准输入 复制文本 |
3 6 7 0 |
标准输出 复制文本 |
3 5 8 24 24 46 |
来源
2019 欢送 (迫害) CGY 杯程序设计竞赛