Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
107756 李树强 跳棋的挑战 C++ 通过 100 301 MS 240 KB 607 2023-10-28 09:30:51

Tests(8/8):


#include<iostream> using namespace std; int res[20], n, cnt = 0; bool vis[25], line1[50], line2[50]; void f(int pos){ if (pos >= n){ if (cnt < 3){ for(int i = 0; i < n; i++){ cout << res[i] << ' '; } cout << endl; } cnt++; return; } for(int i = 1; i <= n; i++){ int x = pos, y = i; if(!vis[i] && !line1[x - y + n] && !line2[x + y]){ res[pos] = i; vis[i] = line1[x - y + n] = line2[x + y] = true; f(pos + 1); vis[i] = line1[x - y + n] = line2[x + y] = false; } } } int main(){ cin >> n; f(0); cout << cnt; return 0; }


测评信息: