MUKER_DEV with iOS

[swift] ๋ฐฑ์ค€ - 9506๋ฒˆ: ์•ฝ์ˆ˜๋“ค์˜ ํ•ฉ ๋ณธ๋ฌธ

๐Ÿค– ์•Œ๊ณ ๋ฆฌ์ฆ˜/BAEKJOON

[swift] ๋ฐฑ์ค€ - 9506๋ฒˆ: ์•ฝ์ˆ˜๋“ค์˜ ํ•ฉ

MUKER 2023. 4. 30. 17:29
 

9506๋ฒˆ: ์•ฝ์ˆ˜๋“ค์˜ ํ•ฉ

์–ด๋–ค ์ˆซ์ž n์ด ์ž์‹ ์„ ์ œ์™ธํ•œ ๋ชจ๋“  ์•ฝ์ˆ˜๋“ค์˜ ํ•ฉ๊ณผ ๊ฐ™์œผ๋ฉด, ๊ทธ ์ˆ˜๋ฅผ ์™„์ „์ˆ˜๋ผ๊ณ  ํ•œ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด 6์€ 6 = 1 + 2 + 3 ์œผ๋กœ ์™„์ „์ˆ˜์ด๋‹ค. n์ด ์™„์ „์ˆ˜์ธ์ง€ ์•„๋‹Œ์ง€ ํŒ๋‹จํ•ด์ฃผ๋Š” ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑํ•˜๋ผ.

www.acmicpc.net


์„ฑ๊ณต ํ’€์ด

while true {
    let n = Int(readLine()!)!
    if n == -1 { break }
    let arr = (1..<n).filter { n%$0 == 0 }
    if arr.reduce(0,+) == n {
        print("\(n) = \(arr.map { String($0) }.joined(separator: " + "))")
    } else {
        print("\(n) is NOT perfect.")
    }
}