奇思妙想波奇酱 观察发现 b 很小,所以直接搜,但是还发现有点重复,记 f[x] 为 以 x 为端点后半段能否构造,显然可以记忆化,直接秒了。 #include<bits/stdc++.h> // #define int long long using namespace std; using i64 = long long; void solve() { int n; cin >> n; vector<int> b(n + 1); vector<int> f(n + 1, -1); for(int i = 1; i <= n; ++i) ...