QOJ.ac

QOJ

Time Limit: 1 s Memory Limit: 512 MB Total points: 100
[+10]

# 7838. 往日之影

Statistics

2023 年 ? 月 ? 日。

⟦求完全图有多少个每个顶点度均为偶数的子图?⟧

“这是,不属于我的记忆?”

现在,你需要快速解决这样一道熟悉的问题..........

题目大意

一个简单图有 n 个顶点,每对不同顶点之间有 12 概率连边,12 概率不连边(概率独立),给定数组 c,求使得每一个顶点 u,在形成的图中度数都 mod 的概率。

由于点之间没有顺序区别,为了减少输入量,给出 a_0,a_1,a_2,a_3 a_i:=\sum\limits_{j=1}^n[c_j=i]

换句话说,你可以认为 u\in [1,a_0] c_u=0 u\in [a_0+1,a_0+a_1] c_u=1 u\in[a_0+a_1+1,a_0+a_1+a_2] c_u=2 u\in [a_0+a_1+a_2+1,n] c_u=3

本题多测。

保证模数是奇素数。

输入格式

一行两个整数 T,p 分别表示数据组数和模数。

接下来 T 组数据。

对于第 i 组数据,先输入一行一个整数 n_i 表示图的点数。接下来一行四个整数 a_i 含义同题面。

输出格式

对于每组数据,输出一行一个整数,表示概率在 \bmod p 意义下的值。

样例输入

5 998244353
4
2 0 2 0
4
0 3 0 1
6
6 0 0 0
40
10 5 18 7
100
30 11 30 29

样例输出

0
982646785
997574145
398756258
930951642

样例解释

对于第一组,有理数表示为 0

对于第二组,有理数表示为 \frac{1}{64}

对于第三组,有理数表示为 \frac{11}{16384}

数据范围

全体数据保证 T\le 10^5,\sum n\le 10^6,p\in \mathbb{P},p\not=2,2|\sum\limits_{i=0}^3 a_i i

Subtask 1 (10pts) : T=1,n\le 7

Subtask 2 (20pts) : \sum n\le 40,p=998244353

Subtask 3 (10pts) : \sum n\le 100,p=998244353

Subtask 4 (10pts) : a_0=n,a_1=a_2=a_3=0

Subtask 5 (50pts) : T\le 10^5,\sum n\le 10^6