알고리즘 문제 풀이/프로그래머스
[프로그래머스] 이상한 문자 만들기 python
부끄러엇피치
2022. 4. 2. 11:43
728x90
https://programmers.co.kr/learn/courses/30/lessons/12930
출처 : 프로그래머스
코딩테스트 연습 - 이상한 문자 만들기
문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을
programmers.co.kr
def solution(s):
answer = ''
i = 0 #각 단어 인덱스
for ch in s:
if ch == ' ': # 빈칸 체크
answer += ch
i = 0 # 빈칸이면 계속 단어 인덱스 0
else: # 빈칸 아니면
if i%2 == 0:
answer += ch.upper()
else:
answer += ch.lower()
i+= 1
return answer
def solution(s):
answer = ''
for word in s.split(" "):
n = ''
for i in range(len(word)):
if i%2 == 0:
n += word[i].upper()
else:
n += word[i].lower()
answer += (n+" ")
return answer[:-1]
풀이
두 방법으로 풀었는데 비슷하다.
이 문제에서 주의할 점은 단어 사이의 공백이 하나만 있다는 것이 아니라는 점이다.
하나 이상의 공백을 갖고 있다.
그래서 모든 공백을 없애주고 하나의 공백으로만 문자열을 이어 붙이며 새로운 단어일 때 인덱스가 다시 0부터 시작하며 따져줘야 한다.