Problem:
Score : 200 points

Problem Statement

Given are a positive integer N and a string S of length N consisting of lowercase English letters.

Determine whether the string is a concatenation of two copies of some string.
That is, determine whether there is a string T such that S = T + T.

Constraints

1 \leq N \leq 100

S consists of lowercase English letters.

|S| = N

Input

Input is given from Standard Input in the following format:

N
S

Output

If S is a concatenation of two copies of some string, print Yes; otherwise, print No.

Sample Input 1

6
abcabc

Sample Output 1

Yes

Let T = abc, and S = T + T.

Sample Input 2

6
abcadc

Sample Output 2

No

Sample Input 3

1
z

Sample Output 3

No

Solution in Java8 (OpenJDK 1.8.0) (judge verdict: Wrong Answer)


import java.util.Scanner;


public class Main {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        //System.out.print("入力してください > ");
        int    n = Integer.parseInt(scanner.nextLine());
        String s = scanner.nextLine();
        
        if(n % 2 == 1 || n == 0){
            System.out.println("No");
            return;
        }
        String s1 = s.substring(0  , n/2-1);
        String s2 = s.substring(n/2, n-1);
        
        if(s1 == s2){
            System.out.println("Yes");
        }
        else{
            System.out.println("No");
        }
        
        // Scannerクラスのインスタンスをクローズ
        scanner.close();
    }
}