728x90
프로그래머스 예상 대진표
대진표 상의 두 플레이어가 만나는 시점을 구하는 문제
a와 b가 일치할 때 까지 반으로 나눠서 그 횟수를 반환 하도록 구현
func solution(_ n:Int, _ a:Int, _ b:Int) -> Int {
var a = a
var b = b
var count = 0
while a != b {
count += 1
a = (a.isMultiple(of: 2) ? a : a + 1) / 2
b = (b.isMultiple(of: 2) ? b : b + 1) / 2
}
return count
}
// N = 4
// 3
// 2 2
// 1 1 1 1
// N A B answer
// 8 4 7 3
728x90
'Algorithm' 카테고리의 다른 글
SwiftUI: 괄호 회전하기 (0) | 2024.03.23 |
---|---|
SwiftUI: 멀리 뛰기 (0) | 2024.03.22 |
SwiftUI: N개의 최소공배수 (0) | 2024.03.20 |
SwiftUI: 점프와 순간 이동 (1) | 2024.03.19 |
SwiftUI: 연속 부분 수열 합의 개수 (0) | 2024.03.18 |