216592026-01-13 17:49:29algoproJáték (50 pont)cpp17Elfogadva 50/504ms2796 KiB
// UUID: 755791d3-480f-4ba8-a0f6-b9c707a5cac8
#include <bits/stdc++.h>
using namespace std;

#define int long long

const int MOD = 1000000007;

vector<int> fact(300001);

int hat(int a, int b) {
    int c = 1;
    while (b>0) {
        if (b%2) {
            c=(c*a)%MOD;
        }
        a=(a*a)%MOD;
        b/=2;
    }
    return c;
}

int binom(int n, int k) {
    return (fact[n]*hat((fact[n-k]*fact[k])%MOD, MOD-2))%MOD;
}

signed main() {
    fact[0]=1;
    for (int i = 1; i <= 300000; i++) {
        fact[i]=(i*fact[i-1])%MOD;
    }
    int b, c;
    cin >> b >> c;
    cout << (binom(c-1+c-b,c-1)-binom(c-1+c-b,c)+MOD)%MOD;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/04ms2612 KiB
2Elfogadva0/04ms2612 KiB
3Elfogadva2/24ms2612 KiB
4Elfogadva3/34ms2796 KiB
5Elfogadva3/34ms2612 KiB
6Elfogadva3/34ms2664 KiB
7Elfogadva3/34ms2616 KiB
8Elfogadva3/34ms2712 KiB
9Elfogadva3/34ms2612 KiB
10Elfogadva3/34ms2584 KiB
11Elfogadva3/34ms2764 KiB
12Elfogadva3/34ms2612 KiB
13Elfogadva3/34ms2612 KiB
14Elfogadva3/34ms2760 KiB
15Elfogadva3/34ms2612 KiB
16Elfogadva3/34ms2612 KiB
17Elfogadva3/34ms2612 KiB
18Elfogadva3/34ms2520 KiB
19Elfogadva3/34ms2612 KiB