[KMOI R1] 集合 First

题目描述

有一个集合 $A=\{1,2,3\dots,n\}$。 定义交替和 $G(B)$ 如下: - 把集合 $B$ 中的元素从大到小排序,得到 $B=\{b_1,b_2\dots,b_{cnt}\}$($cnt$ 为集合元素个数)。则 $G(B)=\sum\limits_{i=1}^{cnt}\Big((-1)^{i+1}\times b_i\Big)$。 例如 $G(\{1,2,4,6,9\})=9-6+4-2+1=6$。 特别地,$G(\empty)=0$。 现在,给定集合 $A=\{1,2,3,\dots,n\}$,小谢想知道对于 $A$ 的**任意子集 $P$**,求出 $G(P)$ 的总和。 由于小谢太菜了,所以请你帮帮忙,**答案对 $911451407$ 取模。**

输入输出格式

输入格式


一个正整数 $n$,表示给定的集合 $A=\{1,2,3,\dots,n\}$。

输出格式


一个正整数 $ans$,表示对于 $A$ 的**任意子集 $P$**,$G(P)$ 的总和。 **答案对 $911451407$ 取模。**

输入输出样例

输入样例 #1

2

输出样例 #1

4

输入样例 #2

1000

输出样例 #2

476463243

输入样例 #3

1919810

输出样例 #3

193840227

说明

## 样例 $1$ 解释 $G(\empty)=0$ $G(\{1\})=1$ $G(\{1,2\})=1$ $G(\{2\})=2$ 故 $ans=G(\empty)+G(\{1\})+G(\{1,2\})+G(\{2\})=4$。 ## 数据范围 **本题采用 subtask 捆绑测试。** |子任务编号| 测试点 | $n\le$ | 分值 | |:-:| :----------: | :----------: | :----------: | |$1$| $1,2$ | $20$ | $15$ | |$2$| $3\sim5$ | $10^3$ | $10$ | |$3$| $6\sim10$ | $10^{9}$ | $30$ | |$4$| $11\sim17$ | $10^{16}$ | $45$ | 对于 $100\%$ 的数据:$1\le n\le 10^{16}$。 ## 后记 $$\color{orange}{小谢:别打我,我下次再也不研究大小超过\ 30\ 的集合了。}$$ $$\color{purple}{你:我*****}$$