백준공부/java

[백준] 30458번 팰린드롬 애너그램 (silver 4

gomduri43 2023. 11. 6. 23:26

import java.util.*;
import java.io.*;

public class Main{
    public static void main(String[] args) throws IOException{
        BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
        BufferedWriter bw=new BufferedWriter(new OutputStreamWriter(System.out));
        int n=Integer.valueOf(br.readLine());
        String a=br.readLine();
        int[] left=new int[26];
        int[] right= new int[26];
        for(int i=0; i<n/2; i++){
            left[a.charAt(i)-'a']++;
        }
        int middle= n%2==1 ? n/2+1 : n/2;
        for(int i=middle; i<n; i++){
            right[a.charAt(i)-'a']++;
        }
        int temp=0;
        for(int i=0; i<26; i++){
            if(Math.abs(left[i]-right[i])%2==1){
                temp=-1;
                break;
            }
            else if(left[i]-right[i]>0 && (left[i]-right[i])%2==0){
                temp+=left[i]-right[i];
            }
            else if(right[i]-left[i]>0 && (right[i]-left[i])%2==0){
                temp-=right[i]-left[i];
            }
        }

        bw.write(temp==0 ? "Yes" : "No");
        bw.flush();
    }
}