比赛时间 | 比赛名称 | 当场过题数 | 至今过题数 | 总题数 | 排名 |
---|---|---|---|---|---|
2020-08-20 | HDU 2020 Multi-University Training Contest 7 | 4 | 6 | 11 | 28/757 |
for(int i = 0;i <= n;i++){ for(int j = 1;i + j <= n;j++){ if((i + j) & 1) continue;//显然本题中i+j必然为偶数 if(j) f[i][j] = 1; if(j > 1) f[i][j] = (f[i][j] + 1ll * f[i][j - 2] * (j - 1)) % p; if(i > 1) f[i][j] = (f[i][j] + 1ll * f[i - 2][j] * (i - 1)) % p; f[i][j] = 1ll * f[i][j] * inv[i + j] % p; } }
最后对于每一组数据,答案为$\sum_{i=1}^{2n+1}(f_{n-i,i-1}x_i-f_{i-1,n-i}x_i)$,总复杂度$O(n^2+\sum n)$。