[백준 Python Swift] 2798번 블랙잭

Cobugi·2021년 8월 21일
0

백준

목록 보기
5/21
post-thumbnail

2798번 블랙잭


풀이 방법

  • 반복문을 돌면서 세 수의 합이 주어진 제한을 넘지 않으면서 가장 큰 수를 찾는다

풀이


Python

n, m = map(int, input().split(" "))
cards = list(map(int, input().split(" ")))

sum_cards = 0

for i in range(n):
    for j in range(i+1, n):
        for k in range(j+1, n):
            if cards[i] + cards[j] + cards[k] > sum_cards:
                if cards[i] + cards[j] + cards[k] <= m:
                    sum_cards = cards[i] + cards[j] + cards[k]
print(sum_cards)

Swift

import Foundation

let inputLine = readLine()!.components(separatedBy: " ").map { Int($0)! }
let cardNums = readLine()!.components(separatedBy: " ").map { Int($0)! }
let lenOfCardNums = inputLine[0]
let limitNumber = inputLine[1]

var count = 0

for i in 0...lenOfCardNums-3 {
    for j in i+1...lenOfCardNums-2 {
        for k in j+1...lenOfCardNums-1 {
            let sumOfCards = cardNums[i]+cardNums[j]+cardNums[k]
            if sumOfCards <= limitNumber {
                count = max(count, sumOfCards)
            }
        }
    }
}
print(count)
profile
iOS Developer 🐢

0개의 댓글