100세까지 코딩
[백준] 10809번 알파벳 찾기 (파이썬) 본문
문제
나의 생각
- 알파벳을 'a'-'z'까지 다 입력해서 list를 만들기는 번거롭다.
- ord()를 사용하여 'a' - 'z'를 숫자로 치환한다.
- 숫자로 치환한 것을 find() 함수를 위해 문자로 다시 치환한다.
- string.find() 내장함수를 사용하여 해당 문자를 찾으면 처음 등장 위치, 못 찾으면 -1을 출력한다.
- find() 내장함수에 대한 이해도를 보는 문제인 것 같다.
나의 풀이
s = input()
for i in range(ord('a'), ord('z') + 1):
print(s.find(chr(i)), end= " ")
참고
ord(문자) : 하나의 문자를 받아 해당 문자에 해당하는 유니코드 정수로 반환.
chr(정수) : 하나의 정수를 받아 해당 정수에 해당하는 유니코드 문자로 반환.
find(문자) : 문자가 처음 위치한 자리의 값을 반환. 못 찾으면 -1 (문자열에서만 사용 가능)
index(문자) : 문자가 처음 위치한 자리의 값을 반환. 못 찾으면 ValueError (문자열, 리스트, 튜플에서 가능)
'코딩테스트 > 파이썬' 카테고리의 다른 글
[백준] 25083 새싹 (파이썬) + 따옴표 3개 표현 (0) | 2024.01.10 |
---|---|
[백준] 5622번 다이얼 (파이썬) + 딕셔너리 자료형 (0) | 2024.01.09 |
[백준] 1546번 평균 (파이썬) (0) | 2024.01.09 |
[백준] 10811번 바구니 뒤집기 (파이썬) (0) | 2024.01.09 |
[백준] 3052번 나머지 (파이썬) + set 내장 함수 정리 (0) | 2024.01.08 |