Potato
์•ˆ๋…•ํ•˜์„ธ์š”, ๊ฐ์žก๋‹ˆ๋‹ค?๐Ÿฅ” ^___^ ๐Ÿ˜บ github ๋ฐ”๋กœ๊ฐ€๊ธฐ ๐Ÿ‘‰๐Ÿป

Algorithm/Baekjoon

[๋ฐฑ์ค€] (Swift) 10610๋ฒˆ - 30

๊ฐ์ž ๐Ÿฅ” 2023. 2. 3. 20:19
๋ฐ˜์‘ํ˜•

๐ŸŸ  ๋ฌธ์ œ

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

 

10610๋ฒˆ: 30

์–ด๋Š ๋‚ , ๋ฏธ๋ฅด์ฝ”๋Š” ์šฐ์—ฐํžˆ ๊ธธ๊ฑฐ๋ฆฌ์—์„œ ์–‘์ˆ˜ N์„ ๋ณด์•˜๋‹ค. ๋ฏธ๋ฅด์ฝ”๋Š” 30์ด๋ž€ ์ˆ˜๋ฅผ ์กด๊ฒฝํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ๊ทธ๋Š” ๊ธธ๊ฑฐ๋ฆฌ์—์„œ ์ฐพ์€ ์ˆ˜์— ํฌํ•จ๋œ ์ˆซ์ž๋“ค์„ ์„ž์–ด 30์˜ ๋ฐฐ์ˆ˜๊ฐ€ ๋˜๋Š” ๊ฐ€์žฅ ํฐ ์ˆ˜๋ฅผ ๋งŒ๋“ค๊ณ  ์‹ถ์–ดํ•œ

www.acmicpc.net

๐ŸŸ  ๋‚˜์˜ ํ’€์ด

๋ชจ๋‘,, 3์˜ ๋ฐฐ์ˆ˜์˜ ํŠน์ง•์„ ์ž˜ ์•Œ๊ณ ์žˆ์„ ๊ฒƒ์ด๋‹ค. ๋ชจ๋“  ์ž๋ฆฟ์ˆ˜๋ฅผ ๋”ํ•˜๋ฉด 3์˜ ๋ฐฐ์ˆ˜๊ฐ€ ๋œ๋‹ค๋Š” ๊ฒƒ! ์ด ํŠน์„ฑ์„ ์ž˜ ํ™œ์šฉํ•˜๋ฉด ๋ฌธ์ œ๋Š” ์•„์ฃผ ์‰ฝ๊ฒŒ ํ’€๋ฆฐ๋‹ค.

์•„๋ฌด๋ž˜๋„ 30์˜ ๋ฐฐ์ˆ˜์ด๋‹ค ๋ณด๋‹ˆ๊นŒ, ๋™์‹œ์— 10์˜ ๋ฐฐ์ˆ˜์—ฌ์•ผํ•œ๋‹ค. ๊ทธ๋Ÿผ? ๋งจ ๋งˆ์ง€๋ง‰ ์ž๋ฆฌ์ˆ˜๊ฐ€ ๋ฌด์กฐ๊ฑด 0์œผ๋กœ ๋๋‚˜๊ฒŸ์ง€.. ์ž…๋ ฅ๋ฐ›์€ number์— 0์ด ํฌํ•จ๋˜์–ด์žˆ์ง€ ์•Š๋‹ค๋ฉด -1์„ ์ถœ๋ ฅํ•ด์ฃผ๊ณ , ๋˜ ๋ชจ๋“  ์ž๋ฆฌ์ˆ˜์˜ ํ•ฉ์ด 3์˜ ๋ฐฐ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋ผ๋ฉด -1์„ ์ถœ๋ ฅํ•ด์ฃผ๋ฉด๋œ๋‹ค.

์•„ ๊ทธ๋ฆฌ๊ณ  30์˜ ๊ฐ€์žฅ ํฐ! ๋ฐฐ์ˆ˜๋ฅผ ๋ฝ‘์•„์•ผํ•œ๋‹ค๊ณ ? ๊ทธ๋ƒฅ,, ๋ชจ๋“  ์ž๋ฆฌ์ˆ˜์˜ ํ•ฉ์ด 3์˜๋ฐฐ์ˆ˜์ด๋ฉด, ์–ด๋–ป๊ฒŒ ์ž‘์„ฑํ•˜๋“  ๋ฌด์Šจ ์ˆ˜๋ฅผ ์“ฐ๋“  3์˜ ๋ฐฐ์ˆ˜๊ฐ€ ๋œ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์— ๊ทธ๋ƒฅ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•˜๋ฉด ํ•ด๊ฒฐ! ( 0์€ ์ž์—ฐ์Šค๋Ÿฝ๊ฒŒ ๋งจ ๋’ค๋กœ ๊ฐ€๊ฒ ์ง€? )

 

โŒ ๋Ÿฐํƒ€์ž„ ์—๋Ÿฌ 

๋ญ๊ฐ€ํ‹€๋ ค!!!!!!!! (๋ญ๊ฐ€์‚ด์ช„๋ฒ„์ ผ) 
์ง„์งœ ์ด๋ ‡๊ฒŒ๋‚˜ ์™„๋ฒฝํ•œ ํ’€์ด์ธ๋ฐ ํ‹€๋ฆด์ˆ˜๊ฐ€ ... ์•„๋‹ˆ ์ด๋Ÿด์ˆ˜๊ฐ€... ์‚ฌ์‹ค ์ด ๋ฌธ์ œ ๋„ˆ๋ฌด ์‰ฌ์›Œ์„œ ํ’€์ด ์•ˆ๋‚จ๊ธฐ๋ ค๊ณ  ํ–ˆ๋Š”๋ฐ ์ด๊ฑฐ๋•Œ๋ฌธ์— ๋นก์ณ์„œ!! ๋‚จ๊ธด๋‹ค.

๋ฐฑ์ค€์€ ์ฐธ.. ์ด๋Ÿฐ๊ฒŒ ์• ๋งค๋ชจํ˜ธํ•˜๋‹ค. ์ž…๋ ฅ์ด int์ธ์ง€ string์ธ์ง€ ์ •ํ™•ํ•˜๊ฒŒ ์•Œ๋ ค์ฃผ์ง€ ์•Š๋Š”๋‹ค๋Š”์ ? ๋‹น์—ฐํžˆ -1์„ ์ถœ๋ ฅํ•˜๊ณ , ์ˆซ์ž๋กœ ์ž…๋ ฅ์„ ๋ฐ›์œผ๋‹ˆ ๋‚œ int์ธ์ค„ ์•Œ์•—์ง€...  ์ถœ๋ ฅ๋งŒ string์œผ๋กœ ๋ฐ”๊ฟจ๋‹ค๊ฐ€ ๋˜ ๋Ÿฐํƒ€์ž„์—๋Ÿฌ๊ฐ€ ๋œจ๊ธธ๋ž˜ ์ž…๋ ฅ๋„ string์œผ๋กœ ๋ฐ”๊พธ๋‹ˆ๊นŒ ํ†ต๊ณผ... ์ฐธ๋‚˜!

 

๐ŸŸ  ์ •๋‹ต์ฝ”๋“œ

๊ธฐ์–ตํ•˜์ž, ์ž…๋ ฅ๋„ ์ถœ๋ ฅ๋„ String์ด๋‹ค!

import Foundation

private func solution(_ number: String) -> String {
    let arr = number.map{ Int(String($0))! }.sorted(by: >)

    if !arr.contains(0) || arr.reduce(0, +) % 3 != 0 {
        return "-1"
    }
    return arr.map{ String($0) }.joined()
}

let number = readLine()!
print(solution(number))
๋ฐ˜์‘ํ˜•