求调
查看原帖
求调
1299558
plk5418楼主2024/12/2 20:36
#include <bits/stdc++.h>
using namespace std;
int const mod = 998244353;
int fac[3000010], f[3000010], iv[3000010], a, b, c;
int pow(int x, int y){
	int res = 1;
	while(y){
		if(y & 1) res = 1ll * res * x % mod;
		x = 1ll * x * x % mod, y >>= 1;
	}
	return res;
}
int main(){
	std::ios::sync_with_stdio(false),cin.tie(nullptr);
	cin >> a >> b >> c;
	int n = a + b + c;
	fac[0] = f[0] = 1;
	for(int i = 1; i <= n; i++) fac[i] = 1ll *i * fac[i-1] % mod;
	for(int i = 1; i <= n; i++) f[i] = 1ll * f[i-1] * fac[i] % mod;
	iv[n] = pow(f[n], mod - 2);
	for(int i = n; i; i--) iv[i - 1] = 1ll * iv[i] * fac[i] % mod;
	cout << (1ll * f[n-1] * f[a-1]%mod*f[b-1] % mod * f[c-1] % mod * iv[a + b - 1] % mod * iv[a + c - 1] % mod * iv[b + c - 1] % mod) <'\n';
	return 0;
}
2024/12/2 20:36
加载中...