본문 바로가기
알고리즘/완전탐색

[백준][Python] 5671번 호텔 방 번호

by 임짠짠 2022. 7. 26.
반응형
 

5671번: 호텔 방 번호

선영이는 집 호수에 반복되는 숫자가 있는 경우에는 그 집에 사는 사람에게 불운이 찾아온다고 믿는다. 따라서, 선영이는 838호나 1004호와 같이 한 숫자가 두 번 이상 들어있는 집에는 절대 살지

www.acmicpc.net

 

코드

import sys

while 1:
	a = sys.stdin.readline().rstrip()
	if not a:
		break
	n, m = map(int,a.split())
	cnt = 0
	for i in range(n,m+1):
		dic = {}
		flag = 0
		for j in str(i):
			if j in dic:
				flag = 1
				break
			else:
				dic[j] = 1

		if flag == 0:
			cnt += 1
	print(cnt)

 

설명

입력받은 수를 string 형으로 바꾼 후 딕셔너리에 해당 숫자가 존재하는지 확인했다.

만약 존재하면 flag 값을 1로 바꾼 후 for문을 빠져나가고, 존재하지 않으면 딕셔너리에 추가를 해줬다.

for문을 빠져나왔을 때 flag 값이 0이면 중복되는 숫자가 없다는 뜻이므로 cnt를 1 증가시켰다.

반응형

댓글