HIT해
[Swift] 백준 - 반복수열 본문
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()
'Swift > Swift 알고리즘' 카테고리의 다른 글
[Swift] 백준 - 미로찾기 (0) | 2024.09.10 |
---|---|
[Swift] 백준 - 바이러스 (0) | 2024.09.09 |
[Swift] 프로그래머스 - 타겟 넘버 ( DFS ) (0) | 2024.09.09 |
[Swift] 백준 - DFS와 BFS (0) | 2024.09.08 |
[Swift] 프로그래머스 - 자릿수 더하기 (0) | 2024.09.03 |