本题是否卡常

P3226 [HNOI2012] 集合选数

似乎没有卡常,我认为是您初始化 `f` 数组的次数过多被卡 T 了。 就是这一段 ``` for(int i = 1; i <= r; i = -~i){ for(int j = 0; j <= M - 5; j = -~j){ f[i][j] = 0; } } ``` 删掉之后在 `if(vis[j]){` 下面加一行 `f[i][j]=0` 即可。
by GeorgeAAAADHD @ 2023-09-13 21:00:31


还有就是,您的 $M$ 开小了,要开成 $3e5$. 然后就是构造矩阵时您的行列上限均需要加上 $1$,然后给所有循环加上 `register` 就能 AC 了。
by GeorgeAAAADHD @ 2023-09-13 21:13:31


这样您不开 O2 #2 能刚好压着时限 AC。
by GeorgeAAAADHD @ 2023-09-13 21:14:50


|