MUKER_DEV with iOS

[swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ์˜ˆ์‚ฐ ๋ณธ๋ฌธ

๐Ÿค– ์•Œ๊ณ ๋ฆฌ์ฆ˜/programmers

[swift] ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ์˜ˆ์‚ฐ

MUKER 2022. 12. 29. 12:46
 

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค

์ฝ”๋“œ ์ค‘์‹ฌ์˜ ๊ฐœ๋ฐœ์ž ์ฑ„์šฉ. ์Šคํƒ ๊ธฐ๋ฐ˜์˜ ํฌ์ง€์…˜ ๋งค์นญ. ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค์˜ ๊ฐœ๋ฐœ์ž ๋งž์ถคํ˜• ํ”„๋กœํ•„์„ ๋“ฑ๋กํ•˜๊ณ , ๋‚˜์™€ ๊ธฐ์ˆ  ๊ถํ•ฉ์ด ์ž˜ ๋งž๋Š” ๊ธฐ์—…๋“ค์„ ๋งค์นญ ๋ฐ›์œผ์„ธ์š”.

programmers.co.kr


๋ฌธ์ œํ’€์ด๋ฅผ ์ง๊ด€์ ์œผ๋กœ ์ดํ•ดํ•  ์ˆ˜ ์žˆ๋„๋ก ๊ณ ์ฐจํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์€ ํ’€์ด์™€
๊ณ ์ฐจํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•œ ํ’€์ด๋กœ ๋‚˜๋ˆ„์–ด ๊ณต๋ถ€ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

 

๊ณ ์ฐจํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š์€ ํ’€์ด

import Foundation

func solution(_ d:[Int], _ budget:Int) -> Int {
    var sum = 0
    for (i, v) in d.sorted().enumerated() {
        sum += v
        if sum > budget {
            return i
        }
    }
    return d.count
}
  •  

 

๊ณ ์ฐจํ•จ์ˆ˜๋ฅผ ์‚ฌ์šฉํ•œ ํ’€์ด

import Foundation

func solution(_ d:[Int], _ budget:Int) -> Int {
    var budget = budget

    return d.sorted().filter{
        budget = budget - $0
        return budget >= 0
    }.count
}
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ๋‹ค๋ฅธ์‚ฌ๋žŒ ํ’€์ด ์ฐธ๊ณ .
  • filter์•ˆ์—์„œ budget์„ ๊ฐ์†Œ์‹œํ‚ค๊ณ  ๋‚จ์•„์žˆ๋Š” budget์ด 0๋ณด๋‹ค ํฌ๊ฑฐ๋‚˜ ๊ฐ™๋‹ค๋ฉด ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜ํ•ด์ค€๋‹ค.
  • filter์•ˆ์—์„œ ๊ฐ„๋‹จํ•˜๊ณ  ๋ช…ํ™•ํ•˜๊ฒŒ ์ฝ”๋“œ๋ฅผ ์ง ๊ฑธ๋ณด๊ณ  ๋งŽ์ด ๋ฐฐ์› ๋‹ค.