[프로그래머스] 완전탐색 - 숫자 야구 (파이썬) - Statssy
코딩테스트 연습 - 완전탐색 - 숫자 야구 (파이썬)
코딩테스트 연습 - 완전탐색 - 숫자 야구를 풀어본다.
- 이 비슷한 문제를 2년전?에 푼거 같은데 이젠 내 능력으로 풀 수 있더라..뿌듯
- for문이 너무 많아서 약간 지저분해 보이긴하는데 핵심은 그냥 strike는 같은자리 구하면되고 ball은 같은 수가 몇개 있는지 보고 그 수에 strike수를 뺀 값으로 했다.
내 코드
from itertools import permutations
def solution(baseball):
perm = permutations([i for i in range(1,10)], 3)
sum = 0
for p in perm:
ans = list(p)
cnt = 0
for b in baseball:
strike = 0
ball= 0
test = list(map(int, (str(b[0]))))
for i in range(3):
if ans[i] == test[i]:
strike += 1
for t in test:
if t in ans:
ball += 1
ball = ball - strike
if b[1] == strike and b[2] == ball:
cnt += 1
if cnt == len(baseball):
sum += 1
return sum