неділя, 1 листопада 2015 р.

4728

Пошук паліндрома

Паліндром - це рядок, який однаково читається зліва праворуч та справа наліво.
Ваша задача знайти у рядку підрядок, який є паліндромом і має довжину більше одиниці.
Вхідні дані
Вводиться один рядок, який складається з маленьких латинських літер.
Вихідні дані
Вивести підрядок заданого рядка, який є паліндромом. Довжина підтрядка повинна бути більше одиниці. Якщо такого немає - виведіть 0. Якщо розв'язків декількі - виведіть довільний.

import java.util.Scanner; public class Main { public static void main(String[] args) { String s = new Scanner(System.in).next(); for(int i=0, l=s.length(); i<l-1; i++) for(int j=i+2; j<=l; j++) { String sub = s.substring(i, j); if(isPalindrome(sub)) { System.out.println(sub); return; } } System.out.println(0); } private static boolean isPalindrome(String s) { return new StringBuilder(s).reverse().toString().equals(s); } }

Немає коментарів:

Дописати коментар