이 제출은 이전 버전의 oj.uz에서 채점하였습니다. 현재는 제출 당시와는 다른 서버에서 채점을 하기 때문에, 다시 제출하면 결과가 달라질 수도 있습니다.
#include <bits/stdc++.h>
#ifdef LOCAL
#define dbg(x) cerr << "dgb: " << x << "\n";
#else
#define dbg(x)
#pragma GCC optimize("O3")
#pragma GCC optimize("unroll-loops")
#pragma GCC target("avx,avx2,tune=native")
#endif
#define int int_fast64_t
using namespace std;
string s;
int solve(int l, int r) {
dbg("l " << l << " r " << r);
if (l == r)
return 1;
int pl = l;
int pr = r;
while (s[pr] != s[pl]) {
pr--;
if (pr == pl)
return 1;
}
int len = r - pr + 1;
dbg("len " << len);
dbg(s.substr(pl, len));
dbg(s.substr(pr, len));
if (s.substr(pl, len) != s.substr(pr, len)) {
return 1;
}
return 2 + solve(pl + len, pr - 1);
}
signed main() {
ios_base::sync_with_stdio(false);
cin.tie(nullptr);
int t;
cin >> t;
while (t--) {
cin >> s;
dbg(s);
cout << solve(0, (int)s.size() - 1) << "\n";
}
}
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |
| # | Verdict | Execution time | Memory | Grader output |
|---|
| Fetching results... |