본문 바로가기

알고리즘/python

[python/파이썬] 백준 1105 팔

반응형

[문제 출처]

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

 

1105번: 팔

첫째 줄에 L과 R이 주어진다. L은 2,000,000,000보다 작거나 같은 자연수이고, R은 L보다 크거나 같고, 2,000,000,000보다 작거나 같은 자연수이다.

www.acmicpc.net

 

[문제 풀이]

 

L보다 크거나 같고 R보다 작거나 같은 숫자 중에서 8이 가장 적게 들어간 숫자에서의 8의 개수를 구하는 문제이다.

8의 개수를 세기 위해서 숫자를 문자열로 바꾸어 count()를 사용했다. 

 

for문이 진행되는 중에 최솟값이 0이 될 경우 더 진행해도 의미가 없으므로 for문을 멈추고 정답을 출력한다.

#1105

L,R = map(int, input().split())

cnt = 9
for i in range(L, R+1):
  if cnt > str(i).count('8'):
    cnt = str(i).count('8')
  
  if cnt == 0:
    break

print(cnt)

 

반응형