Run ID 作者 问题 语言 测评结果 分数 时间 内存 代码长度 提交时间
38682 沈仲恩 【J】T1 C++ 运行出错 0 1 MS 348 KB 1203 2025-10-18 15:58:16

Tests(0/25):


#include <bits/stdc++.h> #define ctr(x) if (x){f[l][r]=1;continue;} #define ctb(x) if (x){f[l][r]=1;break;} using namespace std; bool f[305][305]; int n; char s[305]; signed main() { int _; scanf("%d", &_); while (_--) { scanf("%d", &n); scanf("%s", s + 1); for (int i = 1; i <= n; i++) f[i][i - 1] = 1; for (int len = 2; len <= n; len++) { for (int l = 1, r = len; r <= n; l++, r++) { f[l][r] = 0; if (s[l] == s[r]) { ctr(f[l + 1][r - 1]); if (len >= 3) { ctr(f[l + 1][r - 2]); ctr(f[l + 2][r - 1]); } } for (int k = l + 1; k <= r - 2; k++) { ctb(f[l][k] && f[k + 1][r]); if (s[l] == s[r]) ctb(f[l + 1][k - 1] && f[k + 1][r - 1]); } } } if (f[1][n]) puts("YES"); else puts("NO"); } return 0; }


测评信息: