Blog blog = new Korea()

알고리즘

[백준] 10809 알파벳 찾기 (Python)

newkr 2022. 6. 8. 20:08
728x90

임의의 문자열을 입력하면 알파벳이 몇 번째 자리에 쓰였는지 확인하는 문제다.
 예제를 설명하면, b, a, e, k, j, o, o, n 이라는 문자열 안에서 b가 몇 번째 자리인지, a가 몇 번째 자리인지 표시해야 하며,
알파벳 순서에 맞게 표기해야한다. 또한, 쓰이지 않은 알파벳은 -1 로 처리하면 된다.
 즉, 예제 출력에서 1 -> 0 -> -1 ... 인 이유는 baekjoon 에서 a가 2번째 자리에 있고, b가 1번째 자리에 있고, c는 쓰이지 않았기 때문에 1 0 -1 ...로 표기된 것이다. (컴퓨터는 0부터 자리 수를 셉니다. ex) 0번째, 1번째, 2번째...)

# 백준 10809 "알파벳 찾기"
s = input()
alphabet = list('abcdefghijklmnopqrstuvwxyz')

for i in alphabet: # 알파벳 리스트를 반복문으로 돌림
    if i in s:
        print(s.index(i), end = ' ') # i가 s안에서 몇 번째인지 출력
    else :
        print("-1", end = ' ') # i가 s안에 없다면 -1을 출력

임의의 문자열은 변수 s를 통해 입력받고, 알파벳 a~z까지 담긴 리스트를 하나 만들어둔다.
알파벳이 담긴 리스트를 반복문을 통해 돌리면 i에 a~z까지 한 번씩 대입되고, 조건문을 통해서 대입된 i가 우리가 입력한 문자열 s에 있다면 i가 s에서 몇 번째 였는지 출력합니다. 없다면 -1을 출력합니다.

728x90