B - String Palindrome Editorial /

Time Limit: 2 sec / Memory Limit: 1024 MB

配点 : 200

問題文

長さが奇数である文字列 S が以下の条件をすべて満たすとき、S は「強い回文」であるといいます。

  • S は回文である。
  • NS の長さとするとき、S1 文字目から (N-1)/2 文字目まで(両端含む)からなる文字列は回文である。
  • S(N+3)/2 文字目から N 文字目まで(両端含む)からなる文字列は回文である。

S が強い回文かどうかを判定してください。

制約

  • S は英小文字のみからなる
  • S の長さは 3 以上 99 以下の奇数

入力

入力は以下の形式で標準入力から与えられる。

S

出力

S が強い回文ならば Yes 、 強い回文でないならば No と出力せよ。


入力例 1

akasaka

出力例 1

Yes
  • Sakasaka
  • S1 文字目から 3 文字目までからなる文字列は aka
  • S5 文字目から 7 文字目までからなる文字列は aka

これらはすべて回文であるため、S は強い回文です。


入力例 2

level

出力例 2

No

入力例 3

atcoder

出力例 3

No

Score : 200 points

Problem Statement

A string S of an odd length is said to be a strong palindrome if and only if all of the following conditions are satisfied:

  • S is a palindrome.
  • Let N be the length of S. The string formed by the 1-st through ((N-1)/2)-th characters of S is a palindrome.
  • The string consisting of the (N+3)/2-st through N-th characters of S is a palindrome.

Determine whether S is a strong palindrome.

Constraints

  • S consists of lowercase English letters.
  • The length of S is an odd number between 3 and 99 (inclusive).

Input

Input is given from Standard Input in the following format:

S

Output

If S is a strong palindrome, print Yes; otherwise, print No.


Sample Input 1

akasaka

Sample Output 1

Yes
  • S is akasaka.
  • The string formed by the 1-st through the 3-rd characters is aka.
  • The string formed by the 5-th through the 7-th characters is aka. All of these are palindromes, so S is a strong palindrome.

Sample Input 2

level

Sample Output 2

No

Sample Input 3

atcoder

Sample Output 3

No