열렬히.뛰기

10809번: 알파벳 찾기

알고리즘: 실전 > 백준 단계별로 풀기: 1번 ~ 9번 > 10809번: 알파벳 찾기

문제

알파벳 소문자로만 이루어진 단어 S가 주어진다.

각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오.

아이디어

  1. 배열 알파벳 생성 : ‘-1’로 차있는 26개의 칸
  2. 문자열을 리스트화
  3. for문 돌리기
    • 각 칸을 숫자로 변환 (아스키코드 사용)

    • 만약 알파벳[숫자] 가 -1이면

      알파벳[숫자] = i번째로 바꾸기

  4. 출력
    • 리스트를 그냥 출력하는 것이 아님.

코드

python
"""알파벳 찾기"""

alphabet = [-1] * 26
word = list(input())

for i in range(len(word)):
    w = word[i]
    x = ord(w) - 97
    if alphabet[x] == -1:
        alphabet[x] = i

for i in alphabet:
    print(i, end=" ")