lottos와 win_nums 2개의 배열이 들어온다.
lottos는 내가 산 로또 번호
win_nums 는 금주의 로또 번호이다.
동생이 낙서를 하여 로또 번호가 훼손이 되어서 훼손된 부분은 0으로 입력하였다.
당첨될수 있는 최고의 순위와 최저의 순위를 배열에 담아서 반환하면 된다.
import Foundation
func solution(_ lottos:[Int], _ win_nums:[Int]) -> [Int] {
var rightCount:Int = 0
var answer:[Int] = []
var zeroCount:Int = 0
for i in 0..<win_nums.count{
for j in 0..<lottos.count{
if win_nums[i] == lottos[j]{
rightCount += 1
}
}
if lottos[i] == 0{
zeroCount += 1
}
}
answer.append(7 - (zeroCount + rightCount))
answer.append(7 - rightCount)
if answer[0] == 7{
answer[0] = 6
}
if answer[1] > 6{
answer[1] = 6
}
return answer
}
이번 문제는 정답 로또에서 내 로또 번호와 비교하여 로또번호가 맞으면 rightCount 를 1 올려주고 0이라면 zeroCount를 1 올려준다.
만약 하나도 못맞쳤다면 7이 나올 수 있는데 그럴 경우에는 낙첨인 6등이기 때문에 7이상의 값은 6으로 수정한다.