Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 내일배움캠프 프로젝트
- 리액트 훅
- 리액트 프로젝트
- 내일배움캠프 최종 프로젝트
- 타입스크립트 리액트
- 파이썬 slice
- 파이썬 enumerate
- JavaScript
- typeScript
- 코딩테스트
- 파이썬 for
- 리액트
- 프로그래머스
- React Hooks
- js
- 타입스크립트 props
- REACT
- 파이썬 list
- 자바스크립트
- tanstack query
- 내배캠 프로젝트
- 내일배움캠프
- 파이썬 딕셔너리
- useState
- Next 팀 프로젝트
- 파이썬 for in
- 타입스크립트
- 파이썬 반복문
- 한글 공부 사이트
- 파이썬 replace
Archives
- Today
- Total
sohyeon kim
[Python] 백준 : 알파벳 찾기 10809 본문
728x90
📝 문제
알파벳 소문자로만 이루어진 단어 S가 주어진다. 각각의 알파벳에 대해서, 단어에 포함되어 있는 경우에는 처음 등장하는 위치를, 포함되어 있지 않은 경우에는 -1을 출력하는 프로그램을 작성하시오.
입력 | 출력 |
첫째 줄에 단어 S가 주어진다. 단어의 길이는 100을 넘지 않으며, 알파벳 소문자로만 이루어져 있다. | 각각의 알파벳에 대해서, a가 처음 등장하는 위치, b가 처음 등장하는 위치, ... z가 처음 등장하는 위치를 공백으로 구분해서 출력한다. 만약, 어떤 알파벳이 단어에 포함되어 있지 않다면 -1을 출력한다. 단어의 첫 번째 글자는 0번째 위치이고, 두 번째 글자는 1번째 위치이다. |
baekjoon | 1 0 -1 -1 2 -1 -1 -1 -1 4 3 -1 -1 7 5 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 |
🫠 나의 풀이
string = input()
result = []
for i in range(97, 123): # 아스키코드 범위를 돈다. 122까지가 알파벳이므로 123으로 작성
result.append(string.find(chr(i)))
# 알파벳 a 부터 string 에 위치한 인덱스를 찾아 result 에 넣는다.
# find 는 찾는 값이 없으면 -1 을 반환한다. index 는 AttributeError 발생
print(" ".join(map(str, result)))
# join 은 문자열 리스트를 합쳐준다.
# map 으로 result 의 숫자값들을 str 로 바꿔주고
# 공백으로 이어준다.
ord() 함수는 유니코드 문자를 받아, 그에 대응하는 코드값을 반환한다.
ord(a) 는 정수 97 을 반환한다.
chr() 는 그 반대의 기능!
❗️ 처음에 string 변수명을 str 로 썼다가 map 함수에서 문자열로 변환할 때, 에러가 발생했다. 주의하자!
🧞♂️ 다른 사람의 풀이
string = input()
arr = list(range(97,123)) # 97부터 122 까지의 리스트를 만든다.
for i in arr:
print(string.find(chr(i))) # 리스트를 돌면서 str 에 포함된 인덱스를 프린트한다.
🔗 https://www.acmicpc.net/problem/10809
728x90
반응형
'Coding Test' 카테고리의 다른 글
[Python] 프로그래머스 : 공배수 181936 (0) | 2024.02.11 |
---|---|
[Python] 숫자 맞히기 게임 (0) | 2024.01.31 |
[JS] 프로그래머스 : 최대공약수와 최소공배수, 유클리드 호제법 (1) | 2024.01.24 |
[Python] 백준 : 알람 시계 2884 (1) | 2024.01.10 |
[JS] 코딩테스트 : 소수 찾기 (1) | 2024.01.04 |