문제 설명
•
스트라이크와 볼에 대한 정보가 개 주어지면, 해당 조건을 만족하는 답의 개수를 구하는 문제
◦
1에서 9까지의 서로 다른 숫자 세 개로 구성된 세 자리 수
예제 입력/출력
•
입력1
4
123 1 1
356 1 0
327 2 0
489 0 1
Plain Text
복사
•
출력1
2
Plain Text
복사
제약 조건
•
문제 풀이
•
답이 될 수 있는 모든 경우를 살펴보면 된다.
◦
풀이 코드
from itertools import permutations
N = int(input())
infos = [input().split() for _ in range(N)]
ans = 0
for cur in permutations(range(1, 10), 3):
ok = True
for num, st, bl in infos:
cur_st = cur_bl = 0
for i in range(3):
if str(cur[i]) == num[i]:
cur_st += 1
elif str(cur[i]) in num:
cur_bl += 1
if cur_st != int(st) or cur_bl != int(bl):
ok = False
break
if ok:
ans += 1
print(ans)
Python
복사