[백준] 10809번: 알파벳 찾기

jooo·2023년 1월 14일
0

백준

목록 보기
18/35
post-thumbnail

💻 문제 - B5


👉 제출 코드

case1

S = input()
alpha = [-1] * 26
for i in range(len(S)):
    idx = ord(S[i]) - 97
    if alpha[idx] == -1:
        alpha[idx] = i
print(*alpha)
  • ord 함수 사용하여 알파벳을 아스키 코드 값으로 변환시킨다

case2: find 함수 사용

S = input()
for i in list(range(97,123)):
    print(S.find(chr(i), end=' ')
  • 문자열에서만 사용 가능한 find 함수는 문자열 안에 찾는 문자가 위치한 첫번째 순서를 출력한다. 찾는 문자가 문자열 안에 없는 경우 -1을 출력한다: 문제에서 요구하는 바와 같다.
  • 아스키 코드 값을 사용하여 알파벳 리스트를 기준으로 for문을 돌린다
  • chr 함수를 사용하여 숫자를 문자열로 변환시킨다

case3: index 함수 사용

S = input()
for i in 'abcdefghijklmnopqrstuvwxyz':
    if i in S:
        print(S.index(i), end=' ')
    else:
        print(-1, end=' ')
  • index 함수는 문자열뿐만 아니라 리스트, 튜플과 같이 반복 가능한 iterable 자료형에서 사용할 수 있다.
  • index 함수는 찾는 문자가 문자열 안에 없는 경우 Attribute 에러가 발생한다.
profile
조금씩, 꾸준히, 자주

0개의 댓글