题意

个男孩和个女孩,要求组成一个演员的组(一共个人),要求这个组里面至少有个男孩和个女孩,问你方案数

思路

枚举男孩的个数,假设个男孩,那么方案数为.

代码

/**
 *    author: andif
 *    created: 23.08.2023 22:42:18
**/
#include<bits/stdc++.h>
using namespace std;

#define de(x) cerr << #x << " = " << x << endl
#define dd(x) cerr << #x << " = " << x << " "
#define rep(i, a, b) for(int i = a; i < b; ++i)
#define per(i, a, b) for(int i = a; i > b; --i)
#define mt(a, b) memset(a, b, sizeof(a))
#define sz(a) (int)a.size()
#define fi first
#define se second
#define qc ios_base::sync_with_stdio(0);cin.tie(0)
#define eb emplace_back
#define all(a) a.begin(), a.end()
using ll = long long;
using db = double;
using pii = pair<int, int>;
using pdd = pair<db, db>;
using pll = pair<ll, ll>;
using vi = vector<int>;
const db eps = 1e-9;
const int N = 31;

int main() {
    vector<vi> c(N, vi(N, 0));
    c[1][0] = 1; c[1][1] = 1;
    rep(i, 2, N) {
        c[i][0] = 1;
        rep(j, 1, i + 1) {
            c[i][j] = c[i - 1][j] + c[i - 1][j - 1];
        }
    }
    int n, m, t; cin >> n >> m >> t;
    ll ans = 0;
    rep(i, 4, t) {
        if (i > n || t - i > m) continue;
        ans += 1ll * c[n][i] * c[m][t - i];
    }
    cout << ans << '\n';
    return 0;
}