[알고리즘 문제 풀이][파이썬] 백준 10809번: 알파벳 찾기

염지현·2022년 3월 22일
0

BOJ

목록 보기
14/22

백준 10809 문제 링크: https://www.acmicpc.net/problem/10809

📑 문제 설명

알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성

입력: 단어
출력: 알파벳 순서대로 단어에서 처음 등장하는 위치 출력

💡 문제 해결 방법

  1. 결과를 저장할 list 생성(-1으로 초기화된 26개 원소 초기 세팅)
  2. 문자열 전체를 보면서 결과를 저장할 list 값이 -1일 경우에만 처음 등장한 위치 저장

💻 코드

import sys


def find_alphabet(word):
    result = [-1 for i in range(26)]
    for i in range(len(word) - 1):
        if (result[ord(word[i]) - ord('a')] == -1):
            result[ord(word[i]) - ord('a')] = i
        else:
            continue
    return result


if __name__ == '__main__':
    word = sys.stdin.readline()
    result = find_alphabet(word)

    for i in range(26):
        print(result[i], end = " ")

💟 추가적으로 알게 된 점

0개의 댓글