Problem:
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

Solution in C (GCC 9.2.1) (judge verdict: Wrong Answer)

#include <stdio.h>
#include <string.h>

int main()
{
    int l,i,j,k,m,n,o;
    char str[99];
    scanf("%s",str);
    int f=0;
    int ff=0;
    l=strlen(str);
    k=(l-1)/2;
    m=(k-1)/2;
    for(i=0;i<m;i++)
    {
        if(str[i]!=str[m+i+1])
        {
         f=1;
         break;
        }
    }
    n=(3*l -1)/4;
    o=0;
    for(j=(l+1)/2;j<n;j++)
    {
        if(str[j]!=str[n+1+o])
        {
         ff=1;
         break;
        }
        o++;
    }
    if(f==1 || ff==1)
    {
        printf("No");
    }else
    {
       printf("Yes");
    }
}