equal stack
문제
코드
def equalStacks(h1, h2, h3):
h1 = h1[::-1]
h2 = h2[::-1]
h3 = h3[::-1]
sum1 = sum(h1)
sum2 = sum(h2)
sum3 = sum(h3)
while True:
min_height = min(sum1, sum2, sum3)
# base case
if min_height == 0:
return 0
if min_height < sum1:
sum1 -= h1.pop()
if min_height < sum2:
sum2 -= h2.pop()
if min_height < sum3:
sum3 -= h3.pop()
if sum1 == sum2 == sum3:
return sum1
문제 설명
주어진 3개의 리스트의 합을 동일하게 만드는 문제
위 그림과 같이 각 리스트의 합이 동일할 때 까지 스택의 pop()으로 제거해주는 문제
위 과정을 해결하기 위해 제시된 코드의 흐름은 다음과 같다.
출처
https://www.hackerrank.com/challenges/equal-stacks/problem
Author And Source
이 문제에 관하여(equal stack), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@dogit/equal-stack저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)