ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Kotlin 🍬 λ°±μ€€ 7단계 :: 10798 번
    2023. 5. 5. 02:22
    λ°˜μ‘ν˜•

    μ„Έλ‘œμ½κΈ°

    문제   |

      아직 글을 λͺ¨λ₯΄λŠ” μ˜μ„μ΄κ°€ 벽에 κ±Έλ¦° μΉ νŒμ— μžμ„μ΄ λΆ™μ–΄μžˆλŠ” κΈ€μžλ“€μ„ λΆ™μ΄λŠ” μž₯λ‚œκ°μ„ 가지고 놀고 μžˆλ‹€.

      이 μž₯λ‚œκ°μ— μžˆλŠ” κΈ€μžλ“€μ€ μ˜μ–΄ λŒ€λ¬Έμž ‘A’λΆ€ν„° ‘Z’, μ˜μ–΄ μ†Œλ¬Έμž ‘a’λΆ€ν„° ‘z’, 숫자 ‘0’λΆ€ν„° ‘9’이닀. μ˜μ„μ΄λŠ” μΉ νŒμ— κΈ€μžλ“€μ„ μˆ˜ν‰μœΌλ‘œ 일렬둜 λΆ™μ—¬μ„œ 단어λ₯Ό λ§Œλ“ λ‹€. λ‹€μ‹œ κ·Έ μ•„λž˜μͺ½μ— κΈ€μžλ“€μ„ λΆ™μ—¬μ„œ 또 λ‹€λ₯Έ 단어λ₯Ό λ§Œλ“ λ‹€. 이런 μ‹μœΌλ‘œ λ‹€μ„― 개의 단어λ₯Ό λ§Œλ“ λ‹€. μ•„λž˜ κ·Έλ¦Ό 1은 μ˜μ„μ΄κ°€ μΉ νŒμ— λΆ™μ—¬ λ§Œλ“  λ‹¨μ–΄λ“€μ˜ μ˜ˆμ΄λ‹€.

    <κ·Έλ¦Ό1>

      ν•œ μ€„μ˜ λ‹¨μ–΄λŠ” κΈ€μžλ“€μ„ 빈칸 없이 μ—°μ†μœΌλ‘œ λ‚˜μ—΄ν•΄μ„œ μ΅œλŒ€ 15개의 κΈ€μžλ“€λ‘œ 이루어진닀. λ˜ν•œ λ§Œλ“€μ–΄μ§„ λ‹€μ„― 개의 λ‹¨μ–΄λ“€μ˜ κΈ€μž κ°œμˆ˜λŠ” μ„œλ‘œ λ‹€λ₯Ό 수 μžˆλ‹€.

      심심해진 μ˜μ„μ΄λŠ” μΉ νŒμ— λ§Œλ“€μ–΄μ§„ λ‹€μ„― 개의 단어λ₯Ό μ„Έλ‘œλ‘œ 읽으렀 ν•œλ‹€. μ„Έλ‘œλ‘œ 읽을 λ•Œ, 각 λ‹¨μ–΄μ˜ 첫 번째 κΈ€μžλ“€μ„ μœ„μ—μ„œ μ•„λž˜λ‘œ μ„Έλ‘œλ‘œ μ½λŠ”λ‹€. λ‹€μŒμ— 두 번째 κΈ€μžλ“€μ„ μ„Έλ‘œλ‘œ μ½λŠ”λ‹€. 이런 μ‹μœΌλ‘œ μ™Όμͺ½μ—μ„œ 였λ₯Έμͺ½μœΌλ‘œ ν•œ μžλ¦¬μ”© 이동 ν•˜λ©΄μ„œ λ™μΌν•œ 자리의 κΈ€μžλ“€μ„ μ„Έλ‘œλ‘œ 읽어 λ‚˜κ°„λ‹€. μœ„μ˜ κ·Έλ¦Ό 1의 λ‹€μ„― 번째 자리λ₯Ό 보면 두 번째 μ€„μ˜ λ‹€μ„― 번째 자리의 κΈ€μžλŠ” μ—†λ‹€. 이런 경우처럼 μ„Έλ‘œλ‘œ 읽을 λ•Œ ν•΄λ‹Ή 자리의 κΈ€μžκ°€ μ—†μœΌλ©΄, 읽지 μ•Šκ³  κ·Έ λ‹€μŒ κΈ€μžλ₯Ό 계속 μ½λŠ”λ‹€. κ·Έλ¦Ό 1의 λ‹€μ„― 번째 자리λ₯Ό μ„Έλ‘œλ‘œ 읽으면 D1gk둜 μ½λŠ”λ‹€.

      κ·Έλ¦Ό 1μ—μ„œ μ˜μ„μ΄κ°€ μ„Έλ‘œλ‘œ 읽은 μˆœμ„œλŒ€λ‘œ κΈ€μžλ“€μ„ 곡백 없이 좜λ ₯ν•˜λ©΄ λ‹€μŒκ³Ό κ°™λ‹€:

      Aa0aPAf985Bz1EhCz2W3D1gkD6x

      μΉ νŒμ— 뢙여진 단어듀이 μ£Όμ–΄μ§ˆ λ•Œ, μ˜μ„μ΄κ°€ μ„Έλ‘œλ‘œ 읽은 μˆœμ„œλŒ€λ‘œ κΈ€μžλ“€μ„ 좜λ ₯ν•˜λŠ” ν”„λ‘œκ·Έλž¨μ„ μž‘μ„±ν•˜μ‹œμ˜€.

     

    μž…λ ₯   |

      μ΄ λ‹€μ„―μ€„μ˜ μž…λ ₯이 주어진닀. 각 μ€„μ—λŠ” μ΅œμ†Œ 1개, μ΅œλŒ€ 15개의 κΈ€μžλ“€μ΄ 빈칸 없이 μ—°μ†μœΌλ‘œ 주어진닀. μ£Όμ–΄μ§€λŠ” κΈ€μžλŠ” μ˜μ–΄ λŒ€λ¬Έμž ‘A’λΆ€ν„° ‘Z’, μ˜μ–΄ μ†Œλ¬Έμž ‘a’λΆ€ν„° ‘z’, 숫자 ‘0’λΆ€ν„° ‘9’ 쀑 ν•˜λ‚˜μ΄λ‹€. 각 μ€„μ˜ μ‹œμž‘κ³Ό λ§ˆμ§€λ§‰μ— λΉˆμΉΈμ€ μ—†λ‹€.

     

    좜λ ₯   |

      μ˜μ„μ΄κ°€ μ„Έλ‘œλ‘œ 읽은 μˆœμ„œλŒ€λ‘œ κΈ€μžλ“€μ„ 좜λ ₯ν•œλ‹€. μ΄λ•Œ, κΈ€μžλ“€μ„ 곡백 없이 μ—°μ†ν•΄μ„œ 좜λ ₯ν•œλ‹€. 

     

     

    풀이  |

      5 x n 크기의 배열에 μž…λ ₯을 λ°›λŠ”λ‹€.

      κ·Έ ν›„ 5 μ€„μ˜ 배열을 μ„Έλ‘œλ‘œ 읽어 좜λ ₯ν•œλ‹€.

     

     

    λ‹΅μ•ˆ  |

    import java.util.Scanner
    
    fun main() = with(Scanner(System.`in`)) {
        var result = ""
        var word = Array(5) { CharArray(15) { ' ' } }
        var maxSize = 0
        
        for (i in 0 until 5) {
            val input = next()
            maxSize = Math.max(maxSize, input.length)
            word[i] = input.toCharArray()
        }
        
        for (i in 0 until maxSize) {
            for (j in 0 until 5) {
                if (word[j].getOrNull(i) == null) {
                    continue
                }
                result += word[j][i]
            }
        }
        
        print(result)
    }
    λ°˜μ‘ν˜•

    λŒ“κΈ€

Designed by Tistory.