Jakorithm
article thumbnail
728x90

문제

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

 

10809번: 알파벳 찾기

각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출

www.acmicpc.net

 

 

 

코드

알파벳 소문자로 이루어진 문자열 s를 입력받아 각 알파벳에 대해서 a부터 z까지 처음 등장하는 위치를 공백으로 구분하여 출력하는 문제다. 단어의 첫 번째 글자는 0번째 위치이며, s에 존재하지 않은 알파벳의 경우 -1로 출력한다.

fun main() {
    val s = readln()
    val alphabet = Array(26) { -1 }

    repeat(s.length) {
        val idx = s[it] - 'a'

        if (alphabet[idx] == -1) {
            alphabet[idx] = it
        }
    }

    println(alphabet.joinToString(" "))
}
728x90