Algorithm/백준

BOJ 1475 방 번호

문제

다솜이는 은진이의 옆집에 새로 이사왔다.
다솜이는 자기 방 번호를 예쁜 플라스틱 숫자로 문에 붙이려고 한다.
다솜이의 옆집에서는 플라스틱 숫자를 한 세트로 판다. 한 세트에는 0번부터 9번까지 숫자가 하나씩 들어있다.
다솜이의 방 번호가 주어졌을 때, 필요한 세트의 개수의 최솟값을 출력하시오.
(6은 9를 뒤집어서 이용할 수 있고, 9는 6을 뒤집어서 이용할 수 있다.)

입력

첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수이다.

출력

첫째 줄에 필요한 세트의 개수를 출력한다.

 

 

코드

import java.io.*;
import java.util.*;

public class Main {
    public static void main(String[] args) throws IOException {
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        int result = 0;
        int temp = 0;	// 6과 9의 합
        int[] arr = new int[10];  // 연산된 0 ~ 9 숫자 개수
        String roomNumber = br.readLine();  // 주어진 방 번호        
        char[] rommArr = roomNumber.toCharArray();
        
        for(int idx = 0; idx < rommArr.length; idx++) {
            arr[rommArr[idx]-'0']++;
        }
        
        for (int idx = 0; idx < 10; idx++) {
            if(idx == 6 || idx == 9){
              temp += arr[idx];  
            }else{
                if(result < arr[idx]) result = arr[idx];
            } 
        }
        if(temp % 2 != 0) temp++;        
        if(result < (temp / 2)) result = temp / 2;
        
        System.out.println(result);
    }
}

 

 

0~9까지의 배열을 생성하고 순회하며 갯수를 더한 후 최대값을 갱신하였다.

 

 

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

 

1475번: 방 번호

첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수이다.

www.acmicpc.net

 

'Algorithm > 백준' 카테고리의 다른 글

BOJ 5397 키로거  (0) 2023.04.27
BOJ 1406 에디터  (0) 2023.04.18
BOJ 3273 두 수의 합  (0) 2023.04.18
BOJ 2577 숫자의 개수  (0) 2023.04.17
BOJ 10808 알파벳 갯수  (0) 2023.04.17