217502026-01-13 19:04:26algoproJáték (50 pont)cpp17Elfogadva 50/5059ms3564 KiB
// UUID: 5fa63421-7c13-46cb-a9ca-19c300545877
#include <bits/stdc++.h>
using namespace std;
#define ll long long
const ll M=1e9+7;

ll binpow(ll a, ll b) {
    if (b==0)return 1LL;
    ll c=binpow(a, b/2);
    if (b%2==1)return (((c*c)%M)*a)%M;
    else return (c*c)%M;
}

int main() {
	ll b, c;cin>>b>>c;
    vector<ll>fact(2*c+2,1),inv(2*c+2,1);
    for(int i=1;i<=2*c+1;i++){
        fact[i]=fact[i-1]*i;fact[i]%=M;
        inv[i]=binpow(fact[i],M-2);
    }
    cout<<((((fact[2*c-b-1]*inv[c-1])%M)*inv[c-b])%M-(((fact[2*c-b-1]*inv[c])%M)*inv[c-b-1])%M+M)%M;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/01ms316 KiB
2Elfogadva0/02ms316 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva3/31ms316 KiB
5Elfogadva3/31ms316 KiB
6Elfogadva3/31ms316 KiB
7Elfogadva3/32ms316 KiB
8Elfogadva3/32ms508 KiB
9Elfogadva3/32ms316 KiB
10Elfogadva3/32ms316 KiB
11Elfogadva3/34ms564 KiB
12Elfogadva3/38ms804 KiB
13Elfogadva3/313ms820 KiB
14Elfogadva3/354ms3144 KiB
15Elfogadva3/327ms1744 KiB
16Elfogadva3/359ms3432 KiB
17Elfogadva3/339ms2100 KiB
18Elfogadva3/357ms3328 KiB
19Elfogadva3/354ms3564 KiB