Algorithm/Python
[BOJ]1475. 방번호
Pycoder
2019. 4. 10. 12:00
728x90
반응형
문제:
다솜이는 은진이의 옆집에 새로 이사왔다. 다솜이는 자기 방 번호를 예쁜 플라스틱 숫자로 문에 붙이려고 한다.
다솜이의 옆집에서는 플라스틱 숫자를 한 세트로 판다. 한 세트에는 0번부터 9번까지 숫자가 하나씩 들어있다. 다솜이의 방 번호가 주어졌을 때, 필요한 세트의 개수의 최솟값을 출력하시오. (6은 9를 뒤집어서 이용할 수 있고, 9는 6을 뒤집어서 이용할 수 있다.)
입력:
첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수 또는 0이다.
출력:
첫째 줄에 필요한 세트의 개수를 출력한다.
풀이 방법:
크게 두 가지 케이스만 생각해주면 된다. 6과 9를 제외하고 다른 숫자들중 자주 나타나는 숫자의 개수와 6과 9의 개수를 센 것을 반으로 나눈 것의 올림(6과 9는 서로 돌려서 사용할 수 있다.)을 구해 이 두 값 중 최댓값을 반환해주면 된다.
1 2 3 4 5 6 7 8 9 10 | def plastic(n): a=[] import math for i in '01234578': a.append(n.count(i)) min1= max(a) min2= math.ceil((n.count('6')+n.count('9'))/2) return max(min1,min2) n=input() print(plastic(n)) | cs |
728x90
반응형