λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
πŸ’― | λ°±μ€€/πŸ˜€ | Bronze

[Kotlin, B1] λ°±μ€€ 31432번 μ†Œμˆ˜κ°€ μ•„λ‹Œ 수 3

by immgga 2024. 10. 17.

좜처: unsplash.com

μ†Œμˆ˜κ°€ μ•„λ‹Œ 수 3(31432번)

Bronze 1

#μˆ˜ν•™ #μ• λ“œ 혹 #μ •μˆ˜λ‘ 

 

문제 λ‚΄μš©

 

 

문제 μ ‘κ·Ό

n개의 숫자λ₯Ό μ‚¬μš©ν•΄μ„œ μ†Œμˆ˜κ°€ μ•„λ‹Œ μˆ˜κ°€ 있으면 yesλ₯Ό 좜λ ₯ν•˜κ³  μ†Œμˆ˜κ°€ μ•„λ‹Œ 수 ν•˜λ‚˜λ₯Ό μ•„λ¬΄κ±°λ‚˜ 좜λ ₯ν•˜κ³ , μ†Œμˆ˜κ°€ μ•„λ‹Œ μˆ˜κ°€ 없을 λ•ŒλŠ” noλ₯Ό 좜λ ₯ν•˜λŠ” λ¬Έμ œμ΄λ‹€.

각 μˆ«μžλŠ” μ€‘λ³΅ν•΄μ„œ μ‚¬μš©ν•  수 μžˆλ‹€.

 

μ•½κ°„μ˜ μˆ˜ν•™μ  고민이 ν•„μš”ν•œ λ¬Έμ œμ΄λ‹€.

 

같은 숫자λ₯Ό μ€‘λ³΅ν•΄μ„œ μ“Έ 수 μžˆλ‹€λŠ” 경우 λ•Œλ¬Έμ— noκ°€ λ‚˜μ˜€λŠ” κ²½μš°λŠ” ν•˜λ‚˜λ„ μ—†λ‹€.

n개의 μˆ«μžκ°€ 2, 3, 5, 7인 κ²½μš°μ—λŠ” n의 μˆ«μžλ“€μ΄ λͺ¨λ‘ μ†Œμˆ˜μ΄μ§€λ§Œ, 같은 숫자λ₯Ό μ—¬λŸ¬ 번 μ“Έ 수 있으면 22, 33, 55, 77처럼 μ†Œμˆ˜κ°€ μ•„λ‹Œ 수λ₯Ό μ–Έμ œλ“ μ§€ λ§Œλ“€ 수 μžˆλ‹€λŠ” 뜻이 되기 λ•Œλ¬Έμ— n에 μ–΄λ–€ μˆ˜κ°€ λ‚˜μ™€λ„ noκ°€ λ‚˜μ˜€λŠ” κ²½μš°κ°€ μ—†μ–΄μ§€λŠ” 것이닀.

 

그러면 정닡을 같은 수λ₯Ό μ‚¬μš©ν•  수 있게 ν•΄μ£ΌλŠ” μ—°μ†λœ 1을 κ³±ν•΄μ„œ 좜λ ₯ν•˜λ©΄ λœλ‹€.참고둜 0κ³Ό 1 λͺ¨λ‘ μ†Œμˆ˜κ°€ μ•„λ‹ˆλ‹€.

 

 

문제 ν•΄κ²° μ½”λ“œ

더보기
import java.io.BufferedReader
import java.io.InputStreamReader

fun main() = with(BufferedReader(InputStreamReader(System.`in`))) {
    val n = readLine().toInt()
    val d = readLine().split(" ").map { it.toInt() }

    println("YES")
    println(d.last() * 111)
}

 

문제 풀이

μž…λ ₯κ°’μ—μ„œ κ°€μž₯ λ§ˆμ§€λ§‰ 값이 111을 κ³±ν•΄μ„œ 문제λ₯Ό ν•΄κ²°ν•˜μ˜€λ‹€.

 

문제 ν•΄κ²° κ³Όμ •

κΈ°μ‘΄μ—λŠ” 11을 κ³±ν•œ κ²°κ³Όλ₯Ό μ œμΆœν•˜μ˜€μ§€λ§Œ μ˜€λ‹΅μ΄ λ‚˜μ™”λ‹€.

생각해 λ³΄λ‹ˆκΉŒ d에 1밖에 μ—†κ³ , 1에 11을 κ³±ν•˜λ©΄

yes와 11이 λ‚˜μ˜€κ²Œ λ˜λŠ”λ° 11은 μ†Œμˆ˜μ΄λ‹€. 이 caseμ—μ„œ μ˜€λ‹΅μ΄ λ‚˜μ˜€κ²Œ λœλ‹€.

κ·Έλž˜μ„œ 111을 κ³±ν•œ 수λ₯Ό 좜λ ₯ν•΄ 문제λ₯Ό ν•΄κ²°ν•΄ μ£Όμ—ˆλ‹€.

0 ~ 9에 111을 κ³±ν•œ 수(0, 111, 222, 333...)듀은 λͺ¨λ‘ μ†Œμˆ˜κ°€ μ•„λ‹ˆλ‹€.

728x90