공부하기/백준

[Java] 백준 풀기 5586 - JOI와 IOI

XEV 2023. 10. 17. 22:40

자바 백준 5586번

브론즈 2

https://www.acmicpc.net/problem/5586

 

5586번: JOI와 IOI

입력으로 주어지는 문자열에서 연속으로 3개의 문자가 JOI 또는 IOI인 곳이 각각 몇 개 있는지 구하는 프로그램을 작성하시오. 문자열은 알파벳 대문자로만 이루어져 있다. 예를 들어, 아래와 같

www.acmicpc.net

 

 

 

 

 

문제 보기

분류: 구현, 문자열

 

 

 

 

 

코드 보기

import java.util.Scanner;

public class Main {
    
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        
        String input = sc.nextLine();  // 사용자로부터 문자열 입력
        
        int joiCount = 0;  // "JOI"의 개수를 저장할 변수를 초기화
        int ioiCount = 0;  // "IOI"의 개수를 저장할 변수를 초기화
        
        // 입력 문자열을 순회하며 연속된 3개의 문자를 검사
        for (int i = 0; i < input.length() - 2; i++) {
            if (input.substring(i, i + 3).equals("JOI")) {
                // 현재 위치부터 다음 3개의 문자를 추출하고, "JOI"와 일치하는지 확인
                joiCount++;  // "JOI"와 일치하면 joiCount를 증가
            } else if (input.substring(i, i + 3).equals("IOI")) {
                // 현재 위치부터 다음 3개의 문자를 추출하고, "IOI"와 일치하는지 확인
                ioiCount++;  // "IOI"와 일치하면 ioiCount를 증가
            }
        }
        
        System.out.println(joiCount);  // JOI의 개수를 출력
        System.out.println(ioiCount);  // IOI의 개수를 출력
    }
    
}