준코딩

[Swift] 백준 4673번 문제 셀프 넘버 본문

알고리즘/Swift 백준 문제풀이

[Swift] 백준 4673번 문제 셀프 넘버

Ljunhyeob - App Dev 2023. 1. 7. 15:23

https://www.acmicpc.net/problem/4673

 

4673번: 셀프 넘버

셀프 넘버는 1949년 인도 수학자 D.R. Kaprekar가 이름 붙였다. 양의 정수 n에 대해서 d(n)을 n과 n의 각 자리수를 더하는 함수라고 정의하자. 예를 들어, d(75) = 75+7+5 = 87이다. 양의 정수 n이 주어졌을 때,

www.acmicpc.net

https://github.com/Ljunhyeob/baekjoon4673

 

GitHub - Ljunhyeob/baekjoon4673: 백준 - 4673

백준 - 4673. Contribute to Ljunhyeob/baekjoon4673 development by creating an account on GitHub.

github.com

//
//  main.swift
//  baekjoon4637
//
//  Created by 이준협 on 2023/01/06.
//

import Foundation

var arr:[Int] = []
var se:Set<Int> = []
for  i in 1...10000 {
//    arr.append(d((i)))
    se.insert(d(i))
}
for j in 1...10000 {
    if !se.contains(j) {
        print(j)
    }
}

func d(_ n:Int) -> Int {
    var sum = n
    var number = n
    while n != 0 {
        sum = sum + number%10
        number = number / 10

        if number == 0 {
            break
        }
    }
    return sum
}
Comments