結果

問題 No.238 Mr. K's Another Gift
ユーザー 37zigen
提出日時 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
権限があれば一括ダウンロードができます

ソースコード

diff #

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));
	}

}

0