P1497 木牛流马 题解
Dijkstra_zyl · · 题解
[P1497 木牛流马] 题解
推导过程:
| 当 |
放置木牛流马的个数 | 情况数 | 可表示为 |
|---|---|---|---|
| 1 | |||
| 2 | |||
| 3 | |||
不能放在同行同列 ——writer
所以总情况数为:
| 但是以上结论是在 |
h | 重复的情况数 |
|---|---|---|
所以
上代码:
#include <iostream>//数学
using namespace std;
int main(){
int n,k,h; cin >> n >> k >> h;
long long ans = 1,c = 0;
for(int i = 1;i <= k;i++)
ans *= (n-i+1) * (n-i+1);
for(int i = 1;i <= h;i++){
cin >> c;
for(int j = 1;j <= c;j++) ans /= j;
}
cout << ans;
return 0;
}