1 条题解

  • 0
    @ 2026-3-27 15:20:17
    #include<bits/stdc++.h>
    using namespace std;
    int C(int n, int k) {
        if (k < 0 || k > n) return 0;
        long long res = 1;
        for (int i = 1; i <= k; ++i) {
            res = res * (n - k + i) / i; // 边乘边除,避免溢出
        }
        return res;
    }
    
    
    
    int main() {
        int a;
        cin >> a;
        int d = 100 - a;
        int ans = 0;
        for (int k = 0; k * 2 <= d; ++k) {// 2 的位置够放时,继续添加 2 的位置,2的位置放好了,1的位置就自动确定了
        	ans += C(d - k, k);		// 在这些 2 的位置中选2放
    
    	}
        cout << ans << endl;
        return 0;
    }
    

    信息

    ID
    511
    时间
    1000ms
    内存
    256MiB
    难度
    2
    标签
    递交数
    51
    已通过
    13
    上传者