| Run ID | 作者 | 问题 | 语言 | 测评结果 | 分数 | 时间 | 内存 | 代码长度 | 提交时间 |
|---|---|---|---|---|---|---|---|---|---|
| 38615 | LYLAKIOIAKIOI | 【J】T3 | C++ | 运行出错 | 0 | 10 MS | 524 KB | 952 | 2025-10-18 13:44:07 |
#include<bits/stdc++.h> #define pii pair<int,int> #define fi first #define se second #define mk make_pair #define ll long long #define uint unsigned int #define ull unsigned long long using namespace std; const int N=510; bool f[N][N]; int n;string s; void slv(){ cin>>n; memset(f,0,sizeof(f)); for(int i=1;i<=n+1;i++) f[i][i-1]=1; for(int i=n;i>=1;i--){ for(int j=i+1;j<=n;j++){ f[i][j]=0; if(s[i]==s[j]) f[i][j]=f[i+1][j-1]; for(int k=i+1;k<=j-1;k++){ if(s[i]==s[j]) f[i][j]|=f[i+1][k-1]&f[k+1][j-1]; } } } if(f[1][n]) cout<<"YES"<<endl; else cout<<"NO"<<endl; } int main(){ //freopen("1.in","r",stdin); //freopen("1.out","w",stdout); ios::sync_with_stdio(0);cin.tie(0);cout.tie(0); int t=1;cin>>t; while(t--) slv();cout.flush(); cerr<<clock()*1.0/CLOCKS_PER_SEC<<endl; return 0; }