sgu 222

简单的排列组合题。

 

#include <cstdio>
#include <vector>
#include <cmath>
#include <cassert>
#include <algorithm>
using namespace std;

vector<int> fact;

int P(int m, int n) {
    return fact[m] / fact[m - n];
}
int C(int m, int n) {
    return P(m, n) / fact[n];
}



int main() {
    fact.resize(15);
    fact[0] = 1;
    int i;
    for (i = 1; i <= 12; ++i)
        fact[i] = fact[i - 1] * i;

    int n, k;
    scanf("%d %d", &n, &k);

    if (k > n) {
        printf("0\n");
        return 0;
    }

    printf("%d\n", C(n, k) * P(n, k));
    return 0;

}

你可能感兴趣的:(sgu 222)