結果
問題 | No.238 Mr. K's Another Gift |
ユーザー |
![]() |
提出日時 | 2015-07-06 14:03:50 |
言語 | C++11 (gcc 13.3.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 1,278 bytes |
コンパイル時間 | 586 ms |
コンパイル使用メモリ | 69,608 KB |
実行使用メモリ | 5,376 KB |
最終ジャッジ日時 | 2024-07-08 01:20:22 |
合計ジャッジ時間 | 3,991 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 29 WA * 11 |
ソースコード
#include<iostream> #include<cstdio> #include<vector> #include<queue> #include<map> #include<string> #include<algorithm> #include<functional> using namespace std; #define FOR(i,a,b) for (int i=(a);i<(b);i++) #define RFOR(i,a,b) for (int i=(b)-1;i>=(a);i--) #define REP(i,n) for (int i=0;i<(n);i++) #define RREP(i,n) for (int i=(n)-1;i>=0;i--) #define INF 1<<30 #define MP make_pair #define mp make_pair #define pb push_back #define PB push_back #define DEBUG(x) cout<<#x<<": "<<x<<endl #define ll long long #define ull unsigned long long int main(){ string s; cin>>s; int cnt=0; int ini=0; bool f=false; string str=s; REP(i,s.size()){ if(s[i]==s[s.size()-i-1+cnt]) continue; cnt++;ini=i; } if(cnt<=1){ f=true; if(cnt==1) str.insert(s.size()-ini,1,s[ini]); else if(s.size()%2){ str.insert(s.size()/2,1,s[s.size()/2]); }else { str.insert(s.size()/2,1,'a'); } cout<<str<<endl;return 0; } else { cnt=0; REP(i,s.size()){ if(s[s.size()-i-1]==s[i-cnt]) continue; cnt++;ini=i; } if(cnt<=1){ f=true; if(cnt==1) str.insert(ini,1,s[s.size()-ini-1]); else if(s.size()%2){ str.insert(s.size()/2,1,s[s.size()/2]); }else { str.insert(s.size()/2,1,'a'); } cout<<str<<endl;return 0; } } cout<<"NA"<<endl; return 0; }