๐Ÿ“ ์ฝ”ํ…Œ/BOJ

[Swift] ๋ฐฑ์ค€1436

JerryiOS 2023. 3. 23. 14:57

import Foundation

let n = Int(readLine()!)!

/// ์ข…๋ง์˜ ์ˆ˜ : ์–ด๋–ค ์ˆ˜์— 6์ด ์ ์–ด๋„ 3๋ฒˆ ์ด์ƒ ์—ฐ์†์œผ๋กœ ๋“ค์–ด๊ฐ€๋Š” ์ˆ˜
/// 666, 1666, 2666....9666, 10666, ..., 16660, 16661, ... , 16669
/// ๊ตฌํ•ด์•ผ ํ•˜๋Š” ๊ฒƒ : N๋ฒˆ์งธ๋กœ ์ž‘์€ ์ข…๋ง์˜ ์ˆ˜

var arr = [Int]()
var num = 665

while true {
    
    num += 1
    
    // ๋งŒ์•ฝ 666์ด ํฌํ•จ๋˜์–ด์žˆ์œผ๋ฉด arr์— ์ถ”๊ฐ€
    if num.isApocalypseNum {
        arr.append(num)
    }
    
    if arr.count >= n {
        break
    }
}

extension Int {
    
    var isApocalypseNum: Bool {
        
        var result = false
        var num = self

        while num >= 666 {
            if num % 1000 == 666 {
                result = true
                break
            }
            
            num /= 10
        }
        
        return result
    }
    
}

print(arr.last!)
๋ฐ˜์‘ํ˜•