728x90
프로그래머스 카펫
바깥을 감싸는 brown과 내부 yellow를 통해 카펫의 크기를 구하는 문제
풀이 생각 안나서 해답의 2차 방정식 따라 제출
func solution(_ brown:Int, _ yellow:Int) -> [Int] {
let brown = Double(brown)
let yellow = Double(yellow)
let width = Int((brown / 2 - 2 + sqrt((pow((brown / 2) - 2, 2) - 4 * yellow))) / 2)
let height = Int(yellow) / width
return [width + 2, height + 2]
}
// width = (brown / 2 - 2 + sqrt((brown / 2 - 2) ^ 2 - 4 * yellow)) / 2
// brown yellow return
// 10 2 [4, 3]
// 8 1 [3, 3]
// 24 24 [8, 6]
728x90
'Algorithm' 카테고리의 다른 글
SwiftUI: 영어 끝말잇기 (0) | 2024.03.18 |
---|---|
SwiftUI: 영어 끝말잇기 (0) | 2024.03.18 |
SwiftUI: 짝지어 제거하기 (0) | 2024.03.16 |
SwiftUI: 피보나치 수 (0) | 2024.03.15 |
SwiftUI: 다음 큰 숫자 (0) | 2024.03.14 |