Swift/알고리즘
[Swift] 백준 - 반복수열
힛해
2024. 9. 9. 03:45
728x90
https://www.acmicpc.net/problem/2331
문제 접근
값들을 배열에 저장하고 저장하는 순간 이미 배열에 들어있는 숫자라면 반복이 생겼다고 판단해
내장함수 firstIndex(of)를 활용해 인덱스를 찾아서 출력하기로함.
import Foundation
func main() {
let NM = readLine()!.split(separator: " ").map { Int($0)! }
let (N,M) = (NM[0] , NM[1])
var result : [Int] = []
func repeatNum(_ num : String) {
let xyz = num.map{ Int(String($0))! }
var sum = 0
for i in xyz {
sum += Int(pow(Double(i), Double(M)))
}
if result.contains(sum){
return print("\(result.firstIndex(of: sum)!)")
}
result.append(sum)
repeatNum(String(sum))
}
result.append(N)
repeatNum(String(N))
}
// main 함수 실행
main()