1. 문제 설명
2. 풀이 과정
결과를 넣을 변수 counts를 [0]으로 52개인 리스트로 초기화한다.
my_string에 문자를 반복문으로 받아
대문자랑 소문자를 구분해서 아스키 코드로 인덱스를 계산해서 counts에 1을 추가한다.
인덱스는 대문자인 경우에는 'A'의 아스키 코드 값만큼만 빼면 0부터 시작이지만
소문자인 경우에는 'a'를 빼면 0이므로 26을 더해서 26부터 시작하도록 한다.
3. 코드
def solution(my_string):
counts = [0] * 52
for char in my_string:
if 'A' <= char <= 'Z':
counts[ord(char) - ord('A')] += 1
elif 'a' <= char <= 'z':
counts[ord(char) - ord('a') + 26] += 1
return counts
'프로그래머스 > 기초' 카테고리의 다른 글
[프로그래머스] Lv.0 /글자 지우기 (파이썬/Python) (0) | 2025.02.23 |
---|---|
[프로그래머스] Lv.0 /배열 만들기 1 (파이썬/Python) (0) | 2025.02.23 |
[프로그래머스] Lv.0 /qr code (파이썬/Python) (0) | 2025.02.20 |
[프로그래머스] Lv.0 /세로 읽기 (파이썬/Python) (0) | 2025.02.20 |
[프로그래머스] Lv.0 /문자열 뒤집기 (파이썬/Python) (0) | 2025.02.20 |