문제

내가 작성한 코드
# 알파벳 소문자로 이루어진 단어 S 입력
s = input()
s_l = [i for i in s]
# 알파벳 리스트
alphabet = [i for i in 'abcdefghijklmnopqrstuvwxyz']
# 단어에 포함되어 있는 처음 등장하는 위치 출력
for alpha in alphabet: # a-z까지 순서대로 출력
for index, s in enumerate(s_l): # 단어 S의 각 알파벳 출력
if alpha == s:
print(index)
break
if index >= len(s_l) -1:
print(-1)
코드 설명
> s는 알파벳 소문자로 이루어진 단어 S를 의미하는 변수입니다.
> s_l은 단어 S를 각 알파벳을 하나씩 분리한 리스트 변수입니다.
> alphabet 변수는 list compression을 사용하여 a-z까지 순서대로 정렬된 리스트입니다.
> 이중 반복문을 사용하여 알파벳 순서대로 소문자로 이루어진 단어 S에 단어가 존재하면 if 문과 enumerate 함수를 사용하여 index를 추출하고, 바로 break문으로 반복문을 빠져나오게 했습니다.
> 추가로, index >= len(s_l) -1 은 index 가 문자 S의 길이와 같으면 문자 S에 해당하는 알파벳이 존재하지 않음을 의미하므로 -1을 print하게 작성했습니다.
'Coding > 백준' 카테고리의 다른 글
| [1157번] 문자열 - 단어 공부 with Python(★) (0) | 2022.07.19 |
|---|---|
| [2675번] 문자열 - 문자열 반복 with Python (0) | 2022.07.19 |
| [11720번] 문자열 - 숫자의 합 with Python (0) | 2022.07.19 |
| [11654번] 문자열 - 아스키 코드 with Python (0) | 2022.07.19 |
| [1065번] 함수 - 한수(어려움) (0) | 2022.07.18 |