#P4841. [集训队作业2013] 城市规划

    ID: 3771 远端评测题 2000ms 125MiB 尝试: 0 已通过: 0 难度: 6 上传者: 标签>数论数学2013WC/CTSC/集训队生成函数快速傅里叶变换,FFT快速数论变换 NTT

[集训队作业2013] 城市规划

题目描述

刚刚解决完电力网络的问题,阿狸又被领导的任务给难住了。

刚才说过,阿狸的国家有 nn 个城市,现在国家需要在某些城市对之间建立一些贸易路线,使得整个国家的任意两个城市都直接或间接的连通。

为了省钱, 每两个城市之间最多只能有一条直接的贸易路径。对于两个建立路线的方案,如果存在一个城市对,在两个方案中是否建立路线不一样,那么这两个方案就是不同的,否则就是相同的。现在你需要求出一共有多少不同的方案。

好了,这就是困扰阿狸的问题。换句话说,你需要求出 nn 个点的简单 (无重边无自环) 有标号无向连通图数目。

由于这个数字可能非常大, 你只需要输出方案数对 10045358091004535809 ( 479×221+1479 \times 2 ^{21} + 1 ) 即可。

输入格式

仅一行一个整数 nn

输出格式

仅一行一个整数,为方案数 mod 1004535809\bmod \space 1004535809

3
4
4
38
100000
829847355

提示

【数据范围】
对于 20%20\% 的数据,n10n \le 10
对于 40%40\% 的数据,n1000n \le 1000
对于 60%60\% 的数据,n30000n \le 30000
对于 80%80\% 的数据,n60000n \le 60000
对于 100%100\% 的数据,n130000n \le 130000

试题来源:20132013 中国国家集训队第二次作业