結果
問題 | No.238 Mr. K's Another Gift |
ユーザー |
|
提出日時 | 2020-03-31 00:33:20 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 263 ms / 2,000 ms |
コード長 | 1,055 bytes |
コンパイル時間 | 2,494 ms |
コンパイル使用メモリ | 90,800 KB |
実行使用メモリ | 46,400 KB |
最終ジャッジ日時 | 2024-06-23 08:15:09 |
合計ジャッジ時間 | 13,642 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 40 |
ソースコード
import java.util.ArrayList; import java.util.Arrays; import java.util.Scanner; class Main { public static void main(String[] args) { new Main().run(); } boolean palindrome(String str) { char[] cs=str.toCharArray(); int s=0; int t=cs.length-1; boolean ret=true; while(s<=t) { ret&=cs[s++]==cs[t--]; } return ret; } void run() { Scanner sc=new Scanner(System.in); String str=sc.next(); char[] cs=str.toCharArray(); int n=cs.length; int s=0;int t=n-1; while(s<t&&cs[s]==cs[t]) { ++s;--t; } String str1=str.substring(0,n/2)+"a"+str.substring(n/2,n); String str2=str.substring(0,s)+str.charAt(t)+str.substring(s,n); String str3=str.substring(0,t+1)+str.charAt(s)+str.substring(t+1,n); if(palindrome(str1)) { System.out.println(str1); }else if(palindrome(str2)) { System.out.println(str2); }else if(palindrome(str3)) { System.out.println(str3); }else { System.out.println("NA"); } } static void tr(Object... objects) { System.out.println(Arrays.deepToString(objects)); } }