20261107测试--A.变回文

思路

首枚举插入的位置,再枚举插入的字母,最后再判断回文。复杂度O(\(T \times n^2 \times 26\))。

代码

#include <bits/stdc++.h>
using namespace std;
int main(){
	int t;
	cin>>t;
	while(t--){
		string s,ans;
		cin>>s;
		for(int i=0;i<=s.size();i++){
			for(int j=0;j<=25;j++){
				char c='a'+j;
				string cc;
				string s1=s;
				cc+=c;
				s1.insert(i,cc);
				bool f=0;
				for(int k=0;k<s1.size();k++){
					if(s1[k]!=s1[s1.size()-k-1]){
						f=1;
						break;
					}
				}
				if(!f)ans=s1;
			}
			if(ans!="")break;
		}
		if(ans!="")cout<<ans<<'\n';
		else cout<<"NA\n";
	}
	return 0;
}

posted @ 2026-11-07 16:57  halewu  阅读(3)  评论(0)    收藏  举报