본문으로 바로가기

1475-방번호 java

category Algorithm by java 2019. 5. 12. 18:24

1475 - 방번호

문제

다솜이는 은진이의 옆집에 새로 이사왔다. 다솜이는 자기 방 번호를 예쁜 플라스틱 숫자로 문에 붙이려고 한다.

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

입력

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

출력

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

 

0부터 9까지 숫자를 담을 배열을 생성한다.

6과 9는 각각 뒤짚어서 사용할 수 있으므로,  replace메소드를 사용하여 6을 9로 바꿔준다.

 

String 형으로 방 번호를 받았기 때문에 형변환 메소드를 사용하여 int형으로 변환한다.

 

6과 9가 짝수개이면 2로 나누어주고, 홀수개이면 2로 나눈후 +1을 해준다.

ex) 2369호 :  2 (1개)  3 (1개) 6,9 (2개 -> 1개)

ex) 2669호 : 2 (1개) 6,9 (3개 -> 2개)   

 

배열 크기순서대로 정렬을 한 후에 가장 큰 수 (맨뒤) 를 출력해주면 된다.

 

 

package Exam;


import java.util.Arrays;
import java.util.Scanner;

public class Exam1475 {
	public static void main(String[] args) {
		Scanner sc = new Scanner(System.in);

		String s = sc.next();

		s=s.replace('6', '9');

		int [] temp = new int[10];
		for(int i=0; i<s.length(); i++) {
			int value = Integer.parseInt(s.substring(i,i+1));

			temp[value]++;
		}

		if(temp[9] %2 == 0) {
			temp[9]/=2;
		}
		else {
			temp[9]= (temp[9]/2)+1;
		}
		Arrays.parallelSort(temp);
		System.out.println(temp[9]);
	}

}

 

'Algorithm by java' 카테고리의 다른 글

2231 - 분해합 java  (0) 2019.08.13
2839 - 설탕배달 java  (0) 2019.06.27
1929 - 소수구하기 (에라토스테네스의 체) java  (0) 2019.05.13
1193 - 분수찾기 java  (0) 2019.05.12
2775번 - 부녀회장이 될테야! java  (0) 2019.05.12