Code Signal: Intro=39/60
by 습관중독def knapsackLight(value1, weight1, value2, weight2, maxW):
if maxW >= weight1+weight2:
return value1 + value2
elif maxW < weight1+weight2:
if maxW >= weight1 and maxW >= weight2:
return max(value1, value2)
elif maxW >= weight1 and maxW < weight2:
return value1
elif maxW >= weight2 and maxW < weight1:
return value2
elif maxW < weight2 and maxW < weight1:
return 0
메모장에 대충 떠오르는 조건들 써넣는 방식으로 할 땐 5/8개만 통과되고
3개 정도가 자꾸 통과되지 않아 자꾸 예외처리만 해서 대충 어거지로 통과하려하니까
코드만 길어지고 지저분해졌다.
조건문 체계 구조화하지 않으면 안될 것 같아서
코드 싹 다 지우고 엑셀로
경우의 수를 나누어 조건문 구조를 체계화하니까
한번에 풀렸다.
'코드 파이트(Code Signal)' 카테고리의 다른 글
Code Signal: Intro=41/60 (포기) (0) | 2020.02.22 |
---|---|
Code Signal: Intro=40/60 (0) | 2020.02.22 |
Code Signal: Intro=38/60 (0) | 2020.02.22 |
Code Signal: Intro=37/60 (0) | 2020.02.22 |
Code Signal: Intro=36/60 (0) | 2020.02.22 |
블로그의 정보
습관을 애정한다
습관중독