본문 바로가기
반응형

zip3

[프로그래머스] 추억 점수 Python 풀이 문제 구현 dict에 사람과 그리움 점수를 담고 photo에서 계산하면서 result에 담으면 된다. 사실 레벨 0으로 들어가도 될 것 같은 문제다. 코드 from collections import defaultdict def solution(name, yearning, photo): ndict = defaultdict(int) answer = [] for n, y in zip(name, yearning): ndict[n] = y for p in photo: sumyearn = 0 for n in p: sumyearn += ndict[n] answer.append(sumyearn) return answer 다른 풀이 파이썬의 또다른 재미는 숏코딩이다. def solution(name, yearning, .. 2023. 4. 6.
[프로그래머스] 혼자서 하는 틱택토 Python 풀이 문제 틱택토는 3x3에서 하는 3목이라고 보면 된다. 구현 O와 X의 가로와 세로, 대각선 라인의 완성된 3목의 수를 각각 세어서 가능한 상황인지 판단해야 한다. 코드 def solution(board): strboard = ''.join(board) valid = strboard.count('O')-strboard.count('X') if valid not in [0,1]: return 0 colboard = list(zip(*board)) ocnt=0 xcnt=0 for i in range(3): if colboard[i].count('O')==3 or board[i].count('O')==3: ocnt+=1 if colboard[i].count('X')==3 or board[i].count('X').. 2023. 3. 9.
[프로그래머스] 내적 Python Code 프로그래머스 추천 문제가 아직 레벨 1로 나온다. 내적을 풀어보겠다. 문제 문제가 상당히 쉽다 바로 구현해보겠다 Code def solution(a, b): answer=0 for n1, n2 in zip(a, b): answer += n1*n2 return answer 개인적으로 zip, enumerate 함수를 많이 사용하는 편이다. zip으로 풀어서 라인 수가 적다고 생각했지만... Python은 숏코딩 덕후들이 많은 것 같다. 1. def solution(a, b): return sum([x*y for x, y in zip(a,b)]) 2. solution = lambda x, y: sum(a*b for a, b in zip(x, y)) 퍼포먼스는 lambda를 사용한 2번보다 1번이 더 좋다. 2022. 7. 29.
반응형