问题描述
给定N×N的棋盘,问有多少种放置N个车使他们不互相攻击的方案。
输入格式
一行一个整数,N。
输出格式
一行一个整数,表示方案数。
样例输入
3
样例输出
6
数据规模和约定
N<=20
#include<iostream>
using namespace std;
int n;
long long ans = 1;
int main() {
cin >> n;
for (int i = 1; i <= n; i ++) {
ans *= i;
}
cout << ans;
return 0;
}
总结:
相当于动态规划,一开始用dfs始终要超时,后来查找了资料发现可以用动态规划来做