编号 题目 状态 分数 总时间 内存 代码 / 答案文件 提交者 提交时间
#69171 #1322. [L2-1]来吃糖果吧 Accepted 100 269 ms 328 K C++ 17 / 984 B 嘉心糖 2022-05-08 23:13:30
显示原始代码
#include <stdio.h>
#define MAX 1000000007
long int mul(long int a, long int b, long int m) {
    int r = 0;
    while (b) {
        if (b & 1)
            r = (r + a) % m;
        a = a * 2 % m;
        b >>= 1;
    }
    return r;
}
long int pow(long int a, long int b, long int m) {
    long int r = 1;
    while (b) {
        if (b & 1)
            r = mul(r, a, m);
        a = mul(a, a, m);
        b >>= 1;
    }
    return r;
}
long int C(long int n, long int x) {
    if (x > n / 2)
        x = n - x;
    long int sum1 = 1;
    long int sum2 = 1;
    for (int i = 0; i < x; i++) {
        sum1 = mul(sum1, n - i, MAX);
        sum2 = mul(sum2, i + 1, MAX);
    }
    long int tmp = pow(sum2, MAX - 2, MAX);
    return mul(sum1, tmp, MAX);
}
int main() {
    long int n, a, b;
    scanf("%ld%ld%ld", &n, &a, &b);
    long int sum = pow(2, n, MAX);
    // printf("%ld\n",sum);
    long int ans1 = (sum - C(n, a) - C(n, b) + 2 * MAX - 1) % MAX;
    // printf("%ld\n",ans1);
    printf("%ld", ans1);
    return 0;
}
子任务 #1
Accepted
得分:100
测试点 #1
Accepted
得分:100
用时:3 ms
内存:328 KiB

输入文件(testcase_1.in

2 1 2

答案文件(testcase_1.out

0

用户输出

0

系统信息

Exited with return code 0
测试点 #2
Accepted
得分:100
用时:2 ms
内存:240 KiB

输入文件(testcase_2.in

3 1 2

答案文件(testcase_2.out

1

用户输出

1

系统信息

Exited with return code 0
测试点 #3
Accepted
得分:100
用时:2 ms
内存:244 KiB

输入文件(testcase_3.in

3 1 3

答案文件(testcase_3.out

3

用户输出

3

系统信息

Exited with return code 0
测试点 #4
Accepted
得分:100
用时:2 ms
内存:280 KiB

输入文件(testcase_4.in

3 2 3

答案文件(testcase_4.out

3

用户输出

3

系统信息

Exited with return code 0
测试点 #5
Accepted
得分:100
用时:81 ms
内存:260 KiB

输入文件(testcase_5.in

1000000000 199999 200000

答案文件(testcase_5.out

382492393

用户输出

382492393

系统信息

Exited with return code 0
测试点 #6
Accepted
得分:100
用时:33 ms
内存:256 KiB

输入文件(testcase_6.in

981241785 36426 114575

答案文件(testcase_6.out

173776972

用户输出

173776972

系统信息

Exited with return code 0
测试点 #7
Accepted
得分:100
用时:30 ms
内存:300 KiB

输入文件(testcase_7.in

603202994 48772 90081

答案文件(testcase_7.out

810092880

用户输出

810092880

系统信息

Exited with return code 0
测试点 #8
Accepted
得分:100
用时:59 ms
内存:312 KiB

输入文件(testcase_8.in

686442509 103497 190629

答案文件(testcase_8.out

506071717

用户输出

506071717

系统信息

Exited with return code 0
测试点 #9
Accepted
得分:100
用时:22 ms
内存:240 KiB

输入文件(testcase_9.in

796382933 7775 94325

答案文件(testcase_9.out

582594886

用户输出

582594886

系统信息

Exited with return code 0
测试点 #10
Accepted
得分:100
用时:35 ms
内存:244 KiB

输入文件(testcase_10.in

816288818 4784 168417

答案文件(testcase_10.out

506641857

用户输出

506641857

系统信息

Exited with return code 0