문제
다솜이는 은진이의 옆집에 새로 이사왔다. 다솜이는 자기 방 번호를 예쁜 플라스틱 숫자로 문에 붙이려고 한다.
다솜이의 옆집에서는 플라스틱 숫자를 한 세트로 판다. 한 세트에는 0번부터 9번까지 숫자가 하나씩 들어있다. 다솜이의 방 번호가 주어졌을 때, 필요한 세트의 개수의 최솟값을 출력하시오. (6은 9를 뒤집어서 이용할 수 있고, 9는 6을 뒤집어서 이용할 수 있다.)
입력
첫째 줄에 다솜이의 방 번호 N이 주어진다. N은 1,000,000보다 작거나 같은 자연수이다.
출력
첫째 줄에 필요한 세트의 개수를 출력한다.
import Foundation
let input = readLine()!
var arrs = [Int](repeating:0, count: 10)
for i in input {
let num = Int(String(i))!
if num == 6 && arrs[6] > arrs[9] {
arrs[9] += 1
continue
} else if num == 9 && arrs[9] > arrs[6] {
arrs[6] += 1
continue
}
arrs[num] += 1
}
print(arrs.max()!)
이번문제에서 삽질했던건 마지막 print문에서의 옵셔널이었다. 자꾸 옵셔널로 출력되니까 틀렸다고 나왔던던것...swift는 항상 옵셔널을 주의하자
728x90
'코테 > Swift' 카테고리의 다른 글
[Swift] 백준 알고리즘 - 키로거(5397) (1) | 2024.06.06 |
---|---|
[Swift] 백준 알고리즘 - 에디터(1406) (0) | 2024.06.06 |
[Swift] 백준 알고리즘 - 숫자의 개수(2577) (2) | 2024.06.06 |
[Swift] 백준 알고리즘 - 알파벳 개수(10808) (2) | 2024.06.06 |
[Swfit] 백준 알고리즘 - 핸드폰요금(1267) (0) | 2024.06.06 |