백준 JOI와 IOI

KIMYEONGJUN·2025년 3월 26일
post-thumbnail

문제

내가 생각했을때 문제에서 원하는부분

첫째 줄에 알파벳 10000자 이내의 문자열이 주어진다.

첫째 줄에 문자열에 포함되어 있는 JOI의 개수, 둘째 줄에 IOI의 개수를 출력한다.

내가 이 문제를 보고 생각해본 부분

입력 처리: BufferedReader를 사용하여 한 줄의 문자열을 입력받는다.
카운트 변수 초기화: joiCount와 ioiCount 변수를 0으로 초기화한다.
문자열 탐색: 문자열의 길이에서 3을 뺀 만큼 반복하면서, 각 위치에서 3글자씩 잘라서 "JOI"와 "IOI"를 비교한다.
결과 출력: StringBuilder에 결과를 추가하고, 마지막에 한번에 출력한다.

코드로 구현

package baekjoon.baekjoon_27;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

// 백준 5586번 문제
public class Main972 {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringBuilder sb = new StringBuilder();

        String input = br.readLine();
        int joiCount = 0;
        int ioiCount = 0;

        for(int i = 0; i <= input.length() - 3; i++) {
            String substring = input.substring(i, i + 3);
            if(substring.equals("JOI")) {
                joiCount++;
            } else if(substring.equals("IOI")) {
                ioiCount++;
            }
        }

        sb.append(joiCount).append("\n").append(ioiCount);
        System.out.print(sb.toString());
        br.close();
    }
}

마무리

코드와 설명이 부족할수 있습니다. 코드를 보시고 문제가 있거나 코드 개선이 필요한 부분이 있다면 댓글로 말해주시면 감사한 마음으로 참고해 코드를 수정 하겠습니다.

profile
Junior backend developer

0개의 댓글