[Swift]프로그래머스 체육복
by Roel Downey728x90
반응형
체육복
문제
풀이
func solution(_ n:Int, _ lost:[Int], _ reserve:[Int]) -> Int {
var total = 0
var reserveValue = reserve.sorted()
var lostValue = lost.sorted()
for index in 0..<lostValue.count {
for value in 0..<reserveValue.count {
if lostValue[index] == reserveValue[value] {
lostValue[index] = 0
reserveValue[value] = 0
total += 1
break
}
}
}
for index in 0..<lostValue.count {
for value in 0..<reserveValue.count {
if reserveValue[value] == 0 || lostValue[index] == 0 {
continue
}else if lostValue[index]-1 == reserveValue[value] || lostValue[index]+1 == reserveValue[value] {
reserveValue[value] = 0
total += 1
break
}
}
}
return n - lost.count + total
}
solution(5, [2,4], [1,3,5])
solution(5, [2,4], [3])
solution(3, [3], [1])
solution(3, [1], [1,3])
solution(3, [2,3], [1])
solution(18, [7,8,11,12], [1,6,8,10])
solution(24, [12,13,16,17,19,20,21,22], [1,22,16,18,9,10])
solution(9, [2,4,7,8], [3,6,9])
solution(5, [2,4], [3,5])
// 5번과 12번 틀렸을때 이걸 해결했더니 완성 : 같은걸 먼저 빼지 않으면... 아래의 답은 5이다.
solution(5, [1,2], [2,3])
728x90
반응형
'알고리즘_자료구조 > 문제풀이' 카테고리의 다른 글
[c++,Swift] 프로그래머스 소수 찾기 (0) | 2020.01.16 |
---|---|
[Swift]프로그래머스 2016 (0) | 2019.09.03 |
[Swift]프로그래머스 가운데 글자 가져오기 (0) | 2019.08.30 |
[Swift]프로그래머스 모의고사 (0) | 2019.08.29 |
[Swift] 프로그래머스 K번째수 (0) | 2019.08.29 |
블로그의 정보
What doing?
Roel Downey