백준 2798 파이썬 문제풀이

2023. 8. 7. 13:37코딩테스트

반응형
import sys

a, b = map(int, sys.stdin.readline().split())

arr = list(map(int, input().split()))
result = 0

for i in range(a):
    for j in range(i+1, a):
        for k in range(j+1, a):
            if arr[i] + arr[j] + arr[k] > b:
                continue
            else:
                # 일단 저장하고, 그다음 계속 result와 다음 더한 값을 비교하기.
                result = max(result, arr[i] + arr[j] + arr[k])

print(result)

저 max를 하지 않고 result를 list로 저장해 append하고 max(result) 한 사람도 있었다. 호오~~ 기발하다.

 

https://wikidocs.net/109282

 

027 순서를 생각하며 카드를 뽑으려면? ― itertools.permutations

itertools.permutations(iterable, r=None)은 반복 가능 객체 중에서 r개를 선택한 순열을 반환하는 함수이다. ## 문제 1, 2, 3 숫자가 적…

wikidocs.net

순열 : 하나씩 숫자 줄여가면서 곱하는 방식.

728x90