using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace No273 { class Program { static void Main(string[] args) { string sentence; int maxLength = 0; Console.WriteLine("回文判定"); Console.Write(" 単語 = "); sentence=Console.ReadLine(); for (int i = 0; i < sentence.Length; i++) { int num; string temp = sentence.Substring(i); num = SearchPalindrome(temp); if (maxLength < num) maxLength = num; } Console.WriteLine(" 単語に含まれる回文の最大値 = {0}", maxLength); } static int SearchPalindrome(string sentence) { if (sentence.Length <= 1) return sentence.Length; if (sentence[0] == sentence[sentence.Length - 1]) return SearchPalindrome(sentence.Remove(sentence.Length - 1).Substring(1)) + 2; else return SearchPalindrome(sentence.Remove(sentence.Length - 1)); } } }