結果

問題 No.940 ワープ ε=ε=ε=ε=ε=│;p>д<│
コンテスト
ユーザー vjudge1
提出日時 2026-01-14 23:40:29
言語 C++17
(gcc 15.2.0 + boost 1.89.0)
結果
WA  
実行時間 -
コード長 930 bytes
記録
記録タグの例:
初AC ショートコード 純ショートコード 純主流ショートコード 最速実行時間
コンパイル時間 2,155 ms
コンパイル使用メモリ 215,240 KB
実行使用メモリ 15,128 KB
最終ジャッジ日時 2026-01-14 23:40:36
合計ジャッジ時間 6,521 ms
ジャッジサーバーID
(参考情報)
judge6 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample WA * 5
other WA * 12 RE * 10
権限があれば一括ダウンロードができます

ソースコード

diff #
raw source code

#include <bits/stdc++.h>

using namespace std;
using ll = long long;

const int MAXN = 4e5 + 5, Mod = 1e9 + 7;

ll ans, fac[MAXN] = {1}, inv[MAXN], facinv[MAXN] = {1}, a[MAXN];
int p, q, r, n;

ll C(int n, int m) {
	if (n < m) return (n == -1);
	return fac[n] * facinv[m] % Mod * facinv[n - m] % Mod;
}

int main() {
	ios::sync_with_stdio(0), cin.tie(0);
	cin >> p >> q >> r;
	n = p + q + r + 1;
	for (int i = 1; i <= n + max({p, q, r}); i++) {
		fac[i] = fac[i - 1] * i % Mod;
		inv[i] = (i > 1 ? (Mod - Mod / i) * inv[Mod % i] % Mod : 1);
		facinv[i] = facinv[i - 1] * inv[i] % Mod;
	}
	for (int i = 0; i <= n; i++) {
		a[i] = C(n, i) * ((n - i + 1) & 1 ? -1 : 1);
		//cout << a[i] << ' ';
		a[i] += (i ? a[i - 1] : 1), (a[i] *= (Mod + 1) / 2) %= Mod;
		//(ans += a[i] * C(i + p - 1, p) % Mod * C(i + q - 1, q) % Mod * C(i + r - 1, r)) %= Mod;
		//cout << a[i] << ' ' << ans << " | ";
	}
	cout << (ans + Mod) % Mod;
	return 0;
}
0