문제
https://school.programmers.co.kr/learn/courses/30/lessons/12951
프로그래머스
SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프
programmers.co.kr
문제 요약
문자열이 주어졌을때, 맨앞에 있는 알파벳만 대문자. 나머지는 소문자로 만들면 되는 문제였다.
풀이
공백을 기준으로 대문자 구간이 생겨나는 거기 때문에 split, upper, lower를 활용하면 금방 풀 수 있는 문제였다.
def solution(s):
words = s.split(' ')
answer = []
for word in words:
if word:
word = word[0].upper() + word[1:].lower()
answer.append(word)
return ' '.join(answer)
시간복잡도
공백을 기준으로 나뉘어지는 단어의 개수를 n이라고 한다면, O(n)일 것 같다.
'알고리즘 > 알고리즘 문제 풀이' 카테고리의 다른 글
| [Python] 프로그래머스 Lv3. 기지국 설치 (0) | 2026.09.27 |
|---|---|
| [Python] 프로그래머스 Lv2. 이진변환 반복하기 (0) | 2026.09.27 |
| [Python] 프로그래머스 Lv3. 자물쇠와 열쇠 (0) | 2026.09.27 |
| [Python] 프로그래머스 Lv3. 가장 긴 팰린드롬 (2) | 2026.09.21 |
| [Python] 프로그래머스 Lv3. 숫자 게임 (0) | 2026.08.23 |