Baekjoon/IM Level

[백준] 10809 알파벳 찾기 (브론즈5) / 아스키코드, ord("string")

hellosonic 2023. 3. 1. 23:30

문제요약

나의 코드 및 설명

  • 26개의 -1을 요소로 갖는 리스트를 초기화하고,
    입력받은 문자열의 알파벳이 처음 등장하는 위치를 저장하기 위해서, 상기의 리스트의 요소가 -1 일 경우(값이 변화하지 않은 최초의 상황)일 때만 저장될 수 있도록 작성하였다.
  • ord("string") : 아스키코드로 변환
s = list(map(str, str(input()))) #baekjoon
#s[0]-97 = 1  / loc[1] = i
loc = [-1] * 26
for i in range(len(s)):
    if loc[ord(s[i])-97] == -1: 
        loc[ord(s[i])-97] = i
    else:
        continue

for j in range(len(loc)): 
    print(loc[j],end = " ")
    if j == len(loc)-1:
        print()

피드백

이게 왜 브론즈5인지 이해를 못하겠는 상황. 아스키 코드를 생각하고 있지 못한다면 꼼짝없이 당할 수 밖에 없는 문제..

아스키 코드로 변환하면 문제를 상당히 간단하게 풀 수 있다. 참고로 ord("A") = 65 / ord("a") = 97 이다.