2 条题解
-
0
验题人做法
先删,必胜条件就是第一次删除自己左右端点处不等于 的左右端点处的值。
若 左右两边的值都和 左右两边的一样, 就只能退一步,看倒数第二的和正数第二的能和 一样不,假如都一样的,以此类推。
最后 没有找到不一样的删,那么 就赢了。
通俗的意思就是,如果一个数组和另一个数组相等或者反转后和另一个数组相等,那么 就输了。反之则必胜。
#include <bits/stdc++.h> using u32 = unsigned; using i64 = long long; using u64 = unsigned long long; using i128 = __int128; int main() { std::ios::sync_with_stdio(false); std::cin.tie(nullptr); int n; std::cin >> n; std::vector<int> a(n), b(n), c(n); for (int i = 0; i < n; i++) { std::cin >> a[i]; } for (int i = 0; i < n; i++) { std::cin >> b[i]; } c = b; reverse(b.begin(), b.end()); if (a == b || a == c) { std::cout << "1\n"; } else { std::cout << "0\n"; } return 0; }
信息
- ID
- 56
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 7
- 标签
- 递交数
- 40
- 已通过
- 11
- 上传者