풀이 과정
순차적으로 접근하면서 문자열의 첫번째를 숫자인지 알파벳인지 체크
숫자가 아니라면 첫번째 대문자, 맞다면 그대로 저장
나머지 문자열들은 소문자로 변환하여 저장
공백(" ") 만날 시 저장 및 문자열 초기화
def solution(s):
word = False # 문자열 상태 저장
answer = ''
for i in s:
if not word: # 첫번째 자리
if i.isdigit(): # 첫번째 자리가 숫자
answer += i
word = True
elif i == ' ': # 공백(첫번째 자리가 아님)
answer += i
continue
else: # 첫번째 자리가 알파벳
answer += i.upper() # 대문자
word = True
else:
if i == " ":
answer += i
word = False
else:
answer += i.lower()
return answer
출처: 프로그래머스 코딩 테스트 연습, https://programmers.co.kr/learn/challenges
'알고리즘[Python] > 프로그래머스' 카테고리의 다른 글
[ Lv 3 ] 가장 먼 노드 (0) | 2021.07.12 |
---|---|
[ Lv 2 ] N개의 최소공배수 (0) | 2021.07.11 |
[ Lv 2 ] 행렬의 곱셈 (0) | 2021.07.10 |
[ Lv 2 ] 최댓값과 최솟값 (0) | 2021.07.09 |
[ Lv 2 ] 거리두기 확인하기 (0) | 2021.07.08 |