Submission #4044980
Source Code Expand
#include<bits/stdc++.h> #define intt long long using namespace std; const int maxx = 1e5+1314; const int M = 1e9+7; intt qsm(intt x,int k=M-2){ intt ans=1; while(k){if(k&1)ans=ans*x%M;x=x*x%M;k>>=1;} return ans%M; } intt times[maxx]; intt inv[maxx]; intt tb[maxx]; void pre(){ int mx=maxx-20; times[0]=1;tb[0]=1; for(int i=1;i<=mx;i++)times[i]=times[i-1]*i%M,tb[i]=tb[i-1]*3%M; inv[mx]=qsm(times[mx]); for(int i=mx-1;i;i--)inv[i]=inv[i+1]*(i+1)%M; inv[0]=1; } intt C(int a,int b){ if(b==-1)return 1; return times[a]*inv[b]%M*inv[a-b]%M;} intt n,m,k; int read(){int k;cin>>k;return k;} intt dp(intt N){ intt ans=0; for(int i=0;i<=N;i++){ if(i<=m&&(N-i)<=k){ ans+=C(N,i); // cout<<i<<"___"<<N-i<<endl; } ans%=M; } return ans; } int main(){ pre(); n=read();m=read();k=read(); intt N= n+m+k; intt ans=0; for(int i=n;i<=N;i++){ ans+=tb[N-i]*C(i-1,i-n)%M*dp(i-n)%M; ans%=M; // cout<<ans<<"??"<<C(i-1,i-n)<<endl; } cout<<ans<<endl; while(cin>>n>>m)cout<<C(n,m)<<endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | F - Card Game for Three |
User | Lce |
Language | C++14 (GCC 5.4.1) |
Score | 500 |
Code Size | 1079 Byte |
Status | RE |
Exec Time | 100 ms |
Memory | 2560 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 | 3 ms | 2560 KB |
sample_02.txt | AC | 3 ms | 2560 KB |
sample_03.txt | AC | 12 ms | 2560 KB |
subtask1_01.txt | AC | 3 ms | 2560 KB |
subtask1_02.txt | AC | 12 ms | 2560 KB |
subtask1_03.txt | AC | 12 ms | 2560 KB |
subtask1_04.txt | AC | 4 ms | 2560 KB |
subtask1_05.txt | AC | 3 ms | 2560 KB |
subtask1_06.txt | AC | 3 ms | 2560 KB |
subtask1_07.txt | AC | 5 ms | 2560 KB |
subtask1_08.txt | AC | 8 ms | 2560 KB |
subtask1_09.txt | AC | 5 ms | 2560 KB |
subtask1_10.txt | AC | 5 ms | 2560 KB |
subtask2_01.txt | RE | 99 ms | 2560 KB |
subtask2_02.txt | RE | 99 ms | 2560 KB |
subtask2_03.txt | RE | 99 ms | 2560 KB |
subtask2_04.txt | RE | 99 ms | 2560 KB |
subtask2_05.txt | RE | 99 ms | 2560 KB |
subtask2_06.txt | RE | 100 ms | 2560 KB |
subtask2_07.txt | RE | 100 ms | 2560 KB |
subtask2_08.txt | RE | 99 ms | 2560 KB |
subtask2_09.txt | RE | 98 ms | 2560 KB |
subtask2_10.txt | RE | 98 ms | 2560 KB |
subtask2_11.txt | RE | 99 ms | 2560 KB |