import Foundation
func isPrimeNumber(_ n: Int) -> Bool {
if n == 1 {
return false
}
for i in 2..<Int(sqrt(Double(n)) + 1) {
if n % i == 0 {
return false
}
}
return true
}
func solution(_ n:Int, _ k:Int) -> Int {
var converted = ""
var tmp = n
while tmp >= 1 {
converted += String(tmp % k)
tmp /= k
}
var convertedList = converted.reversed().map { String($0) }
print(convertedList.joined())
var answer = 0
var savedValue = ""
while !convertedList.isEmpty {
if convertedList.last == "0" {
convertedList.removeLast()
} else {
while let last = convertedList.last, last != "0" {
savedValue += String(convertedList.removeLast())
}
let reversedValue = savedValue.reversed().map { String($0) }.joined()
if let number = Int(reversedValue), number > 1, isPrimeNumber(number) {
answer += 1
}
savedValue = ""
}
}
return answer
}
'Algorithm > programmers' 카테고리의 다른 글
프로그래머스 - 올바른 괄호 (0) | 2024.10.10 |
---|---|
프로그래머스 - 메뉴 리뉴얼 feat. dfs (0) | 2024.10.08 |
프로그래머스 - 튜플 (0) | 2024.10.05 |
프로그래머스 - [1차] 캐시 (1) | 2024.10.04 |
프로그래머스 - 주차 요금 계산 (2022카카오 블라인드 채용) (0) | 2024.10.04 |
import Foundation
func isPrimeNumber(_ n: Int) -> Bool {
if n == 1 {
return false
}
for i in 2..<Int(sqrt(Double(n)) + 1) {
if n % i == 0 {
return false
}
}
return true
}
func solution(_ n:Int, _ k:Int) -> Int {
var converted = ""
var tmp = n
while tmp >= 1 {
converted += String(tmp % k)
tmp /= k
}
var convertedList = converted.reversed().map { String($0) }
print(convertedList.joined())
var answer = 0
var savedValue = ""
while !convertedList.isEmpty {
if convertedList.last == "0" {
convertedList.removeLast()
} else {
while let last = convertedList.last, last != "0" {
savedValue += String(convertedList.removeLast())
}
let reversedValue = savedValue.reversed().map { String($0) }.joined()
if let number = Int(reversedValue), number > 1, isPrimeNumber(number) {
answer += 1
}
savedValue = ""
}
}
return answer
}
'Algorithm > programmers' 카테고리의 다른 글
프로그래머스 - 올바른 괄호 (0) | 2024.10.10 |
---|---|
프로그래머스 - 메뉴 리뉴얼 feat. dfs (0) | 2024.10.08 |
프로그래머스 - 튜플 (0) | 2024.10.05 |
프로그래머스 - [1차] 캐시 (1) | 2024.10.04 |
프로그래머스 - 주차 요금 계산 (2022카카오 블라인드 채용) (0) | 2024.10.04 |