0%
题目:
n皇后。。。不多bb
直接贴代码了:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| #include<cmath> using namespace std; int f[10]; int sum = 0; int n; bool c(int x) { for(int j = 1; j < x; j++) { if(f[j] == f[x]) return false; if(abs(1.0*(f[j] - f[x])/(j - x)) == 1.0) return false; } return true; } void solve(int x) { for(int i = 1; i <= n; i++) { f[x] = i; if(c(x)) { if( x == n) sum++; else solve(x + 1); } } } int main() { scanf("%d",&n); solve(1); printf("%d",sum); }
|
每天时间紧啊 我心里苦啊