比赛总结:
蔚来杯6:
这场打的是比较顺利的一场就是过题目也比较顺利,但是感觉我们都是4道简单题之后就是没有机会的时间,总是冲不上去那个瓶颈题目!还需要加强训练。
蔚来杯7:
这一场的话也是没有踩什么坑,就是遇到J题,完全没有思路很是难受,赛后看题解得话感觉简单,但时候有些抽象,争取给他补了。
#include <bits/stdc++.h>
using namespace std;
#define ll long long
const int N = 1e4, mod = 998244353;
ll ifac[N];
ll f[65][65][N];
int n, k, t;
void init() {
ifac[0] = 1;
for (int i = 1; i < N; i++) { ifac[i] = (ifac[i - 1] * i) % mod; }
}
ll qpow(ll a, ll b) {
ll res = 1;
while (b) {
if (b & 1) res *= b, res %= mod;
a *= a, a %= mod;
b /= 2;
}
return res;
}
ll C(ll a, ll b) {
ll res = (ifac[a] * qpow(ifac[b], mod - 2)) % mod * qpow(ifac[a - b], mod - 2);
return res % mod;
}
int main() {
init();
cin >> n >> k >> t;
for (int i = 1; i <= n; i++) { f[0][i][i * (i + 1) / 2] = C(n, i); }
for (int i = 1; i < k; i++) { // 选了0-i
for (int j = 0; j <= n; j++) { // 选了j个
for (int g = 0; g <= (j + 1) * j / 2; g++) { // 贡献值,最多j*(j+1)/2
for (int nx = 0; nx <= n - j; nx++) {
f[i][j + nx][g + (nx - 1) * nx / 2] += f[i - 1][j][g] * C(n - j, nx);
f[i][j + nx][g + (nx - 1) * nx / 2] %= mod;
}
}
}
}
cout << f[k - 1][n][t] % mod << endl;
return 0;
}
CF812.:Codeforces Round #812 (Div. 2)还有就是这一场的补题:
D题的话就是一个简单的交互题目,掌握交互的写法,然后仔细推敲一下就行了,就是样例不是很好看,最好就是一遍就过。
然后就是其他CF1600分段的训练题目:
总而言之就是刷了感觉有用,思维有提升。