알고리즘
백준 10809)알파벳 찾기
무루뭉
2020. 12. 28. 17:58
문제
https://www.acmicpc.net/problem/10809
10809번: 알파벳 찾기
각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출
www.acmicpc.net
차근차근 기본부터 풀다가 예전에 풀어봤던 문제를 find() 함수를 써서 다시 풀어보았다.
■ 파이썬 문자열 안에서 문자의 위치를 찾는 함수 중 대표적인 것이 find()이다. find() 함수는 찾는 값이 없으면 -1을 리 턴하므로 문제의 취지에 잘 맞았다.
■ 알파벳들을 a,b,c, ... 처럼 입력하는 것이 아니라 미리 파이썬에서 소문자 데이터를 상수로 정의해 놓았기 때문에 손 쉽게 가져올 수 있다.
import sys
import string
s = str(sys.stdin.readline())
alphabet = list(string.ascii_lowercase)
for i in alphabet:
print(s.find(i), end = " ")
> 공부를 할수록 더 코드도 간결하게 작성하는 법을 알게되는 것 같다.