Submission #3787057
Source Code Expand
#include<cstdio> #include<cstring> #include<vector> #include<queue> #include<algorithm> #include<cmath> #include<climits> #include<string> #include<set> #include<numeric> #include<map> #include<iostream> using namespace std; #define rep(i,n) for(int i = 0;i<((int)(n));i++) #define reg(i,a,b) for(int i = ((int)(a));i<=((int)(b));i++) #define irep(i,n) for(int i = ((int)(n)-1);i>=0;i--) #define ireg(i,a,b) for(int i = ((int)(b));i>=((int)(a));i--) typedef long long ll; typedef pair<ll, ll> mp; /* 重複組合せ(a_iがk個で仕切りがn-1個) */ struct Factorial{ long long N,mod; vector<long long> fact,inv; long long mod_pow(long long x,long long n){ long long res=1; while(n){ if(n&1) (res*=x)%=mod; (x*=x)%=mod; n>>=1; } return res; } long long Inverse(long long n){ return mod_pow(n,mod-2); } Factorial(){} Factorial(long long sn,long long smod){ N=sn; mod=smod; fact.reserve(sn+1); inv.reserve(sn+1); //初期化 fact[0]=1; for(int i=1;i<=sn;i++){ fact[i]=(fact[i-1]*i) % mod; } inv[sn]=Inverse(fact[sn]); for(int i=sn;i>0;i--){ inv[i-1]=(inv[i]*i) % mod; } } long long Fact(long long n){ if(n<0)return 0; return fact[n]; } long long Inv(long long n){ if(n<0)return 0; return inv[n]; } long long Combination(long long n,long long r){ if(n<r)return 0; if(r<0)return 0; if(r==0)return 1; long long ans=1; ans = (ans*Fact(n)) % mod; ans = (ans*Inv(r)) % mod; ans = (ans*Inv(n-r)) % mod; return ans; } long long plus(long long a,long long b){ a%=mod; b%=mod; return (a+b)%mod; } long long minus(long long a,long long b){ a%=mod; b%=mod; return (a+mod-b)%mod; } long long mul(long long a,long long b){ a%=mod; b%=mod; return (a*b)%mod; } long long div(long long a,long long b){ a%=mod; b%=mod; return (a*Inverse(b))%mod; } }; int main(void){ ll n,k; cin>>n>>k; Factorial f(200010,1e9+7); cout<<f.Combination(n+k-1,k)<<endl; return 0; }
Submission Info
Submission Time | |
---|---|
Task | D - 多重ループ |
User | RMQ |
Language | C++14 (GCC 5.4.1) |
Score | 100 |
Code Size | 2067 Byte |
Status | AC |
Exec Time | 9 ms |
Memory | 3328 KB |
Judge Result
Set Name | Sample | Subtask1 | All | ||||||
---|---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 99 / 99 | 1 / 1 | ||||||
Status |
|
|
|
Set Name | Test Cases |
---|---|
Sample | subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask0_sample_04.txt, subtask0_sample_05.txt |
Subtask1 | subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask0_sample_04.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, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.txt |
All | subtask0_sample_01.txt, subtask0_sample_02.txt, subtask0_sample_03.txt, subtask0_sample_04.txt, subtask0_sample_05.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, subtask1_11.txt, subtask1_12.txt, subtask1_13.txt, subtask1_14.txt, subtask1_15.txt, subtask1_16.txt, subtask1_17.txt, subtask1_18.txt, subtask1_19.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 |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
subtask0_sample_01.txt | AC | 9 ms | 3328 KB |
subtask0_sample_02.txt | AC | 9 ms | 3328 KB |
subtask0_sample_03.txt | AC | 9 ms | 3328 KB |
subtask0_sample_04.txt | AC | 9 ms | 3328 KB |
subtask0_sample_05.txt | AC | 9 ms | 3328 KB |
subtask1_01.txt | AC | 9 ms | 3328 KB |
subtask1_02.txt | AC | 9 ms | 3328 KB |
subtask1_03.txt | AC | 9 ms | 3328 KB |
subtask1_04.txt | AC | 9 ms | 3328 KB |
subtask1_05.txt | AC | 9 ms | 3328 KB |
subtask1_06.txt | AC | 9 ms | 3328 KB |
subtask1_07.txt | AC | 9 ms | 3328 KB |
subtask1_08.txt | AC | 9 ms | 3328 KB |
subtask1_09.txt | AC | 9 ms | 3328 KB |
subtask1_10.txt | AC | 9 ms | 3328 KB |
subtask1_11.txt | AC | 9 ms | 3328 KB |
subtask1_12.txt | AC | 9 ms | 3328 KB |
subtask1_13.txt | AC | 9 ms | 3328 KB |
subtask1_14.txt | AC | 9 ms | 3328 KB |
subtask1_15.txt | AC | 9 ms | 3328 KB |
subtask1_16.txt | AC | 9 ms | 3328 KB |
subtask1_17.txt | AC | 9 ms | 3328 KB |
subtask1_18.txt | AC | 9 ms | 3328 KB |
subtask1_19.txt | AC | 9 ms | 3328 KB |
subtask2_02.txt | AC | 9 ms | 3328 KB |
subtask2_03.txt | AC | 9 ms | 3328 KB |
subtask2_04.txt | AC | 9 ms | 3328 KB |
subtask2_05.txt | AC | 9 ms | 3328 KB |
subtask2_06.txt | AC | 9 ms | 3328 KB |
subtask2_07.txt | AC | 9 ms | 3328 KB |
subtask2_08.txt | AC | 9 ms | 3328 KB |
subtask2_09.txt | AC | 9 ms | 3328 KB |
subtask2_10.txt | AC | 9 ms | 3328 KB |