다솜이는 은진이의 옆집에 새로 이사왔다.
다솜이는 자기 방 번호를 예쁜 플라스틱 숫자로 문에 붙이려고 한다.
다솜이의 옆집에서는 플라스틱 숫자를 한 세트로 판다.
한 세트에는 0번부터 9번까지 숫자가 하나씩 들어있다.
다솜이의 방 번호가 주어졌을 때, 필요한 세트의 개수의 최솟값을 출력하시오.
(6은 9를 뒤집어서 이용할 수 있고, 9는 6을 뒤집어서 이용할 수 있다.)
첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수이다.
첫째 줄에 필요한 세트의 개수를 출력한다.
package test;
import java.util.Scanner;
public class test2 {
public static void main(String[] args)
Scanner sc = new Scanner(System.in);
// 문자열로 입력받기
String st = sc.nextLine();
// 6을 9으로 교체
// st = st.replaceAll("9", "6");
st = st.replaceAll("6", "9");
// 0~9 까지 10개의 int배열
int[] arr = new int[10];
// 최댓값 변수 선언
int max = 0;
for(int i = 0; i < st.length(); i++) {
// 숫자에 해당하는 배열 인덱스의 값을 ++함
// -48 을 하는 이유 : 0의 아스키코드값
int num = (int)(st.charAt(i)-48);
arr[num]++;
}
// 9의 경우
if(arr[9] != 0) {
// 6를 포함하기 때문 2로 나눈후
// 반올림을 하여 인덱스 9의 값을 바꿔줌
arr[9] = Math.round(arr[9]/2.0f);
}
for(int i = 0; i < arr.length; i++) {
// int배열을 확인하면서 최대값을 구함
max = Math.max(arr[i], max);
}
System.out.println(max);
}
}