Submission #10216306
Source Code Expand
#include<cstdio> #include<cstring> #include<algorithm> using namespace std; #define ll long long const int maxn = 9e5 + 7, md = 1e9 + 7; ll inv[maxn], finv[maxn], fac[maxn], f[maxn], p2[maxn], p3[maxn]; ll N, M, K, m, k; ll read(){ int s = 0; char c = getchar(); while (c > '9' || c < '0') c = getchar(); while (c >= '0' && c <= '9') s = s * 10 + c - '0', c = getchar(); return s; } ll ksm(ll a, int b){ ll res = 1; while (b){ if (b & 1) res = res * a % md; a = a * a % md; b >>=1 ; } return res; } void init(){ fac[0] = fac[1] = 1; inv[1] = finv[1] = 1; p3[1] = 3;p3[0] = 1; for (int i = 2; i < maxn; i++) p3[i] = p3[i - 1] * 3 % md; for (int i = 2; i < maxn; i++){ inv[i] = ( md - (md / i) * inv[md%i] % md) % md; } for (ll i = 1; i < maxn; i++) { fac[i] = fac[i - 1] * i % md; } finv[maxn - 1] = ksm(fac[maxn - 1], md - 2); for (ll i = maxn - 2; i >= 0; i--) finv[i] = finv[i + 1] * (i + 1) % md; } ll ans = 0; ll getf(){ ll res = 0; f[0] = p3[M]; res = f[0]; for (int i = 1; i <= M; i++) f[i] = (((((f[i - 1] * (N - 1 + i + k) % md + md) % md ) * inv[3]) % md) * inv[i] + md) % md, res = ((res + f[i]) % md + md) % md; return res; } ll C(int x, int y){ return fac[x] * finv[y] % md * finv[x - y] % md; } int main(){ N = read(), M = read(), K = read(); init(); for (k = 0; k <= K; k++) { ans = (ans + p3[K-k] * C(N - 1 + k, k) % md * getf() % md); } printf("%lld\n", ans % md); return 0; }
Submission Info
Submission Time | |
---|---|
Task | F - Card Game for Three |
User | luogu_bot1 |
Language | C++ (GCC 5.4.1) |
Score | 500 |
Code Size | 1626 Byte |
Status | TLE |
Exec Time | 3156 ms |
Memory | 36224 KB |
Judge Result
Set Name | Sample | subtask1 | All | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 500 / 500 | 0 / 600 | ||||||
Status | AC |
|
|
Set Name | Test Cases |
---|---|
Sample | |
subtask1 | subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt |
All | sample_01.txt, sample_02.txt, sample_03.txt, subtask1_01.txt, subtask1_02.txt, subtask1_03.txt, subtask1_04.txt, subtask1_05.txt, subtask1_06.txt, subtask1_07.txt, subtask1_08.txt, subtask1_09.txt, subtask1_10.txt, subtask2_01.txt, subtask2_02.txt, subtask2_03.txt, subtask2_04.txt, subtask2_05.txt, subtask2_06.txt, subtask2_07.txt, subtask2_08.txt, subtask2_09.txt, subtask2_10.txt, subtask2_11.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 31 ms | 32128 KB |
sample_02.txt | AC | 31 ms | 32128 KB |
sample_03.txt | AC | 51 ms | 32128 KB |
subtask1_01.txt | AC | 31 ms | 32128 KB |
subtask1_02.txt | AC | 51 ms | 32128 KB |
subtask1_03.txt | AC | 51 ms | 32128 KB |
subtask1_04.txt | AC | 31 ms | 32128 KB |
subtask1_05.txt | AC | 31 ms | 32128 KB |
subtask1_06.txt | AC | 31 ms | 32128 KB |
subtask1_07.txt | AC | 35 ms | 32128 KB |
subtask1_08.txt | AC | 41 ms | 32128 KB |
subtask1_09.txt | AC | 31 ms | 32128 KB |
subtask1_10.txt | AC | 32 ms | 32128 KB |
subtask2_01.txt | TLE | 3156 ms | 36224 KB |
subtask2_02.txt | TLE | 3156 ms | 34176 KB |
subtask2_03.txt | TLE | 3156 ms | 34176 KB |
subtask2_04.txt | AC | 102 ms | 34176 KB |
subtask2_05.txt | TLE | 3156 ms | 34176 KB |
subtask2_06.txt | TLE | 3156 ms | 36224 KB |
subtask2_07.txt | TLE | 3156 ms | 36224 KB |
subtask2_08.txt | AC | 1960 ms | 32128 KB |
subtask2_09.txt | TLE | 3156 ms | 34176 KB |
subtask2_10.txt | TLE | 3156 ms | 36224 KB |
subtask2_11.txt | AC | 31 ms | 32128 KB |