869C
Posted 123456
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了869C相关的知识,希望对你有一定的参考价值。
dp
我好像很zz。。。
想了好长好长时间,然后没想出来,怒掉rating。。。
其实我们可以吧三种颜色两两计算,因为这样加入第三种颜色不会影响之前的方案,那么我们跑一个dp,计算数量分别为a,b的方案数,乘起来就行了。。。
(我还去想数三元环什么的。。。)
#include<bits/stdc++.h> using namespace std; typedef long long ll; const int N = 5010; const ll mod = 998244353; int a, b, c; ll dp[N][N]; int main() { scanf("%d%d%d", &a, &b, &c); for(int i = 0; i <= 5000; ++i) dp[1][i] = dp[i][1] = i + 1; for(int i = 2; i <= 5000; ++i) for(int j = 2; j <= 5000; ++j) dp[i][j] = (dp[i - 1][j] + (ll)j * dp[i - 1][j - 1]) % mod; printf("%lld\n", dp[a][b] * dp[b][c] % mod * dp[c][a] % mod); return 0; }
以上是关于869C的主要内容,如果未能解决你的问题,请参考以下文章
Codeforces 869C The Intriguing Obsession
Codeforces Round #439 (Div. 2) Problem C (Codeforces 869C) - 组合数学
cf 869c The Intriguing Obsession
CodeForces - 869C The Intriguing Obsession(组合数)