ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ์นดํŽซ(Swift)

2022. 10. 9. 21:23ใ†ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค-Swift

ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค - ์นดํŽซ(Swift)

 

 

 ๋ฌธ์ œ ์„ค๋ช…

 

https://school.programmers.co.kr/learn/courses/30/lessons/42842

 

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

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

programmers.co.kr

 

 ๋‚˜์˜ ํ’€์ด

 

์ฒ˜์Œ ๋ฌธ์ œ๋ฅผ ๋ณด๊ณ  ์ฝ์œผ๋ฉด์„œ ๋ฌธ์ œ๊ฐ€ ๋‹ด๊ณ ์žˆ๋Š” ์˜๋ฏธ๋ฅผ ์ƒ๊ฐํ•˜์ง€ ์•Š์•˜๊ธฐ ๋•Œ๋ฌธ์— ์˜ค๋ž˜ ๊ฑธ๋ ธ๋‹ค.

ํ•ต์‹ฌ์€ ๋‘ ๊ฐ€์ง€์˜€๋‹ค.

 

1. ํ…Œ๋‘๋ฆฌ 1์ค„์€ ๊ฐˆ์ƒ‰์œผ๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ๋‹ค.

2. ๊ฐ€๋กœ๋Š” ์„ธ๋กœ๋ณด๋‹ค ๊ฐ™๊ฑฐ๋‚˜ ํฌ๋‹ค.

 

ํ…Œ๋‘๋ฆฌ๊ฐ€ ๊ฒ‰์œผ๋กœ 1์ค„๋งŒ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ๊ฐ€๋กœ-2, ์„ธ๋กœ-2๋Š” ํ•ญ์ƒ ๋…ธ๋ž€์ƒ‰์ด๋ผ๋Š” ๊ฒƒ์„ ์•Œ ์ˆ˜ ์žˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ๊ฐ€๋กœ๊ฐ€ ์„ธ๋กœ๋ณด๋‹ค ํฌ๊ธฐ ๋•Œ๋ฌธ์— ์ˆœ์ฐจ์ ์œผ๋กœ ํƒ์ƒ‰ํ•  ๋•Œ ๋ชซ์„ w๋กœ ์ฃผ๊ณ  ํƒ์ƒ‰๋˜๋Š” ๊ฐ’์„ h๋กœ ์คŒ์œผ๋กœ์จ ๋„“์ด์— ๋Œ€ํ•ด ์•ฝ์ˆ˜๋ฅผ ๊ตฌํ•  ์ˆ˜ ์žˆ๋‹ค.

 

import Foundation

func solution(_ brown:Int, _ yellow:Int) -> [Int] {
    
    let sum = brown + yellow
    var w = Int()
    var h = Int()
    
    for i in 1...sum {
        if sum % i == 0 {
            w = sum / i
            h = i
        }
        if (w-2) * (h-2) == yellow {
            break
        }
    }
    
    return [w, h]
}