🌼 Problem


🍔 Solution 1 - StringBuilder reverse() 사용

import java.util.Locale;
import java.util.Scanner;

// 회문 문자열
public class Main {
//    방법1) stringBuilder의 reverse() 사용
    public static void Solution(String str){
        // 대소문자 구분하지 않기 위함
        str = str.toLowerCase(Locale.ROOT);

        StringBuilder builder = new StringBuilder(str).reverse();
        if(builder.toString().equals(str)){
            System.out.println("YES");
        }else{
            System.out.println("NO");
        }
    }



    public static void main(String[] args){
        Scanner in=new Scanner(System.in);
        String input = in.next();

        Solution(input);
    }
}

🍔 Solution 2 - while()

import java.util.Locale;
import java.util.Scanner;

// 회문 문자열
public class Main {

    public static String Solution(String str){
        str = str.toLowerCase(Locale.ROOT); // 대소문자 구분 제거
        char[] c = str.toCharArray();
        String answer ="YES";

        int lt = 0;
        int rt = str.length()-1;

        while(lt < rt/2){
            if(c[lt] != c[rt]){
                answer = "NO";
                break;
            }
            lt++; rt--;
        }
        return answer;
    }


    public static void main(String[] args){
        Scanner in=new Scanner(System.in);
        String input = in.next();

        System.out.println(Solution(input));
    }
}

🍔 Solution 3 - for(1)

import java.util.Locale;
import java.util.Scanner;

// 회문 문자열
public class Main {

  public static String Solution(String str){
        str = str.toLowerCase(Locale.ROOT); // 대소문자 구분 제거
        char[] c = str.toCharArray();
        String answer ="YES";

        int lt = 0;
        int rt = str.length()-1;

        for(int i  = 0; i < str.length()/2 ;i++){
            if(c[i]!=c[rt]){
                answer = "NO";
                break;
            }
            rt--;
        }
        return answer;
    }

  public static void main(String[] args){
        Scanner in=new Scanner(System.in);
        String input = in.next();

        System.out.println(Solution(input));
    }
}

🍔 Solution 4 - for(2)

import java.util.Locale;
import java.util.Scanner;

// 회문 문자열
public class Main {

    public static String Solution(String str){
        str = str.toLowerCase(Locale.ROOT); // 대소문자 구분 제거
        char[] c = str.toCharArray();
        String answer ="YES";

        int lt = 0;
        int rt = str.length()-1;

        for(int i  = 0; i < str.length()/2 ;i++){
            if(c[i] == c[rt]){
                rt--;
            }else{
                answer = "NO";
                break;
            }
        }
        return answer;
    }

    public static void main(String[] args){
        Scanner in=new Scanner(System.in);
        String input = in.next();

        System.out.println(Solution(input));
    }
}

🍪 강사 Solution - StringBuilder, String 클래스 equalsIgonoreCase() 사용

import java.util.Locale;
import java.util.Scanner;

// 회문 문자열
public class Main {

    public static String Solution(String str){
        StringBuilder builder = new StringBuilder(str).reverse();
        String answer = "NO";
        
        if(builder.toString().equalsIgnoreCase(str)){
            answer = "YES";    
        }
        return answer;
    }

    public static void main(String[] args){
        Scanner in=new Scanner(System.in);
        String input = in.next();

        System.out.println(Solution(input));
    }
}
profile
진주의 코딩일기

0개의 댓글

Powered by GraphCDN, the GraphQL CDN