본문 바로가기

Python

[Python/Bronze II] 알파벳 찾기 - 10809, find

문제 설명

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

 

code  - 1차

import string
import sys
lowerList = list(string.ascii_lowercase)
input = sys.stdin.readline

word = input()
answer = []
for l in lowerList:
    if l not in word:
        answer.append("-1")
    else:
        answer.append(str(word.index(l)))
print(' '.join(answer))

 

 

code  - 2차

import sys
import string
input = sys.stdin.readline
lowerList = string.ascii_lowercase

s = input().strip()
result = []

for chr in lowerList:
    result.append(str(s.find(chr)))

print(' '.join(result))
  • find  함수 특성(없는 값에 대해선 -1을 반환함)을 이용하여 코드 리팩토링하였습니다.

 

반응형