728x90
📌문제 출처
백준 단계별 문제풀이 - 문자열
https://www.acmicpc.net/problem/10809
❓ 문제
📗 문제 설명
알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오.
📗 입출력
- 입력
- 첫째 줄에 단어 S가 주어진다. 단어의 길이는 100을 넘지 않으며, 알파벳 소문자로만 이루어져 있다.
- 출력
- 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다.
- 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출력한다. 단어의 첫 번째 글자는 0번째 위치이고, 두 번째 글자는 1번째 위치이다.
❗ 풀이
- try, except 구문 / index 활용
📗 풀이 코드
s = list(input())
for a in range(ord('a'),ord('z')+1):
try :
print(s.index(chr(a)), end=' ')
except :
print(-1, end=' ')
📗 코드 해설
- 아스키코드를 활용하여 a부터 z까지의 알파벳을 반복시켜 확인
- try 구문에서 index 함수를 활용하여 해당 알파벳의 index를 출력
- except 포함되지 않은 알파벳의 경우 -1을 출력
'파이썬 문제풀이' 카테고리의 다른 글
[백준 파이썬] 1157 단어 공부 (0) | 2023.09.14 |
---|---|
[백준 파이썬] 2675 문자열 반복 (0) | 2023.09.14 |
[백준 파이썬] 14940 쉬운 최단거리 (0) | 2023.09.14 |
[백준 파이썬] 11726 2xn 타일링 (0) | 2023.09.14 |
[백준 파이썬] 11724 연결 요소의 개수 (0) | 2023.09.14 |