문제
https://school.programmers.co.kr/learn/courses/30/lessons/118667
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
코드
from collections import deque
def solution(queue1, queue2):
if (sum(queue1)+sum(queue2))%2 != 0:
return -1
deque1 = deque(queue1)
deque2 = deque(queue2)
sum1, sum2 = sum(deque1), sum(deque2)
count = 0
while count <= len(queue1)*3 :
if sum1 == sum2:
return count
elif sum1 > sum2:
sum1 -= deque1[0]
sum2 += deque1[0]
d1 = deque1.popleft()
deque2.append(d1)
else:
sum1 += deque2[0]
sum2 -= deque2[0]
d2 = deque2.popleft()
deque1.append(d2)
count += 1
return -1
'⏳ 알고리즘 > python 알고리즘 문제 풀이' 카테고리의 다른 글
프로그래머스 - LV2. 하노이의 탑 (0) | 2022.10.19 |
---|---|
프로그래머스 - LV2. 스킬트리 (0) | 2022.10.16 |
프로그래머스 - LV2. 방문 길이 (0) | 2022.10.13 |
프로그래머스 - LV2. 주차 요금 계산 (0) | 2022.10.11 |
리트코드 - 53. Maximum Subarray (0) | 2022.04.28 |