백준 2810 java : Greedy algorithms

magicdrill·2024년 11월 20일
0

백준 문제풀이

목록 보기
490/654

백준 2810 java : Greedy algorithms

import java.util.Scanner;

public class bj2810 {
    static Scanner scanner = new Scanner(System.in);
    static int N;

    public static void main(String[] args) {
        String seats = inputData();
        System.out.println(findAnswer(seats));
    }

    public static String inputData(){
        System.out.println("inputData()");
        String str = "";

        N = scanner.nextInt();
        str = scanner.next();

        return str;
    }

    public static int findAnswer(String seats){
        System.out.println("findAnswer()");
        int answer = 0;
        StringBuilder editSeats = new StringBuilder("*");
        int i, count = 0;

        for(i = 0; i < N; i++){
            if(seats.charAt(i) == 'S'){
                editSeats.append("S*");
            }
            else{//seats.charAt(i) == 'L'
                editSeats.append("LL*");
                i++;
            }
        }
        System.out.println("수정 결과 : " + editSeats);//입력과 동시에 추가되는 편이 나을듯
        for(i = 0; i < editSeats.length(); i++){
            if(editSeats.charAt(i) == '*'){
                answer++;
            }
            else if(editSeats.charAt(i) == 'S'){
                count++;
            }
            else{
                count++;
                i++;
            }
            System.out.println("i : " + i + " | count : " + count + " | answer : " + answer);
            if(count == N){
                break;
            }
        }

        return answer;
    }
}

0개의 댓글