백준 문제 풀이(1105번) java

tae_in·2022년 8월 28일
0

알고리즘

목록 보기
4/12

문제

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

풀이

이 문제를 풀 떄는 주어지는 값인 L과 R의 길이가 같을 떄만 생각하면 된다. L과 R의 길이가 다르면 8이 포함되지 않는 숫자가 존재하게 된다. if문으로 L과 R의 길이가 같을 때만 값을 비교하도록 코드를 짜고 L과 R의 각 자리수 비교는 charAt()메서드를 사용해서 비교한다. 각 자리수의 값이 같고 그 값이 '8'이라면 count를 증가시켜준다.

코드

package Category;

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

public class q_1105 {

    public static void main(String[] args) throws IOException {

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine(), " ");

        String L = st.nextToken();
        String R = st.nextToken();

        int count = 0;

        if (L.length() == R.length()) {
            for (int i = 0; i < L.length(); i++) {

                if (L.charAt(i) != R.charAt(i)) { // i가 다르다면 8이 없는 수가 부조건 존재한다.
                    break; // i값이 다르다면 프로그램을 종료시켜도 된다.(이미 8이 안 들어가는 경우를 찾음)
                } else {
                    if (L.charAt(i) == '8') {
                        count++;
                    }
                }
            }
        }
        System.out.println(count);
    }
}

0개의 댓글