A141174.午枫的宝藏

普及/提高-

官方

通过率:0%

时间限制:1.00s

内存限制:128MB

题目描述

午枫历经千辛万苦,终于破译了宝藏密码,打开了宝箱!

宝箱里是很多很多的金币(可以看成无穷多),午枫需要与手下的 nn 名水手们分享金币。

根据大嘤帝国的传统,分配宝藏对于船长而言是一件稍不留神就会丧命的苦差事。这是由于,船长需要将每人能分到多少宝藏的决议公布,之后全体船员(包括船长)会投票决定决议是否通过。如果半数及以上船员(包括船长)投票通过,船长就能够安全地执行决议;否则,船长就会被投海杀死,由第 11 顺位继承人继承船长的职位并再次分配,再不通过就继续投海杀死并由第 22 顺位继承人继承,依此类推。

好在经过多日的相处,午枫知道手下的水手各个都是 聪明绝顶贪婪 并且 相互之间如掐脖 的狠人!每个水手都会在 保证自己不被杀死 的前提下 企图获得更大的利益

现在,午枫想要知道,如何分配给第 1,2,,n1,2,\cdots,n 顺位继承人的金币数量,才能保证自己只需要分出去最少的金币就能保住自己的性命。

输入格式

本题单个测试点内包含多组测试数据。

输入第一行一个正整数 TT,表示数据组数。

每组数据第一行一个正整数 nn,表示午枫手下不包括他自己在内的水手数量。

输出格式

为了避免输出量过大,输出对每组数据进行压缩。

对于每组数据,假设午枫分配给船长的第 ii 顺位继承人的金币数量为 rir_i,你只需要输出一行一个压缩后的非负整数 RR

R=(i=1niri)mod(109+7)R = \left( \sum_{i=1}^{n} i \cdot r_i \right) \bmod (10^9+7)

可以证明序列 r1,r2,,rnr_1, r_2, \cdots, r_n 唯一。

输入输出样例

  • 输入#1

    2
    1
    2

    输出#1

    0
    2

说明/提示

数据范围

对于 100%100\% 的测试数据,满足:

1T201 \le T \le 20

1n1091 \le n \le 10^9

输入解题思路,AI测评打分。不知道怎么写?

首页