문제 풀이/Baekjoon Online Judge

[python3] 1475번 방 번호

[잉간] 2019. 4. 18. 20:35


collections.Counter를 사용해 입력받은 문자열에서 각각의 숫자의 개수를 산출한다.

6은 9를 뒤집어서, 9는 6을 뒤집어서 사용할 수 있기에 9의 개수를 6의 개수에 더하고 2로 나눈 다음 9를 지운다.

그 다음 max()를 사용해 N의 value에서 가장 큰 값을 출력하면 된다. 

6과 9의 개수가 가장 클 때는 실수형으로 출력되기 때문에 ceil()을 사용해 올림 해서 출력한다.

문제풀이

from collections import Counter
from math import ceil

N = Counter(list(map(int,input())))

N[6] += N[9]
N[6] /= 2
del N[9]

print(ceil(max(N.values())))