Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
100257 modongtao 九连环 C++ 解答错误 90 0 MS 256 KB 666 2023-08-25 10:17:33

Tests(9/10):


#include <bits/stdc++.h> using namespace std; bool cur[10]; bool steps[500][10]; int step; int setStatus(int i, bool status) { if (cur[i] == status) return 0; if (i == 0) return 0; int res = setStatus(i - 1, 1); for (int j = i-2; j >= 1; j--) res += setStatus(j, 0); cur[i] = status; step++; for (int j = 1; j <= 9; j++) steps[step][j] = cur[j]; return res; } int main() { for (int i = 1; i <= 9; i++) cur[i] = 1; for (int i = 9; i >= 1; i--) setStatus(i, 0); int x; while (cin >> x) { if (x > step) cout << -1 << endl; else { for (int i = 1; i <= 9; i++) cout << steps[x][i]; cout << endl; } } return 0; }


测评信息: