기록하는삶
[코딩 테스트 연습(파이썬/Python)] 프로그래머스 _ 이상한 문자 만들기 본문
728x90
반응형
https://programmers.co.kr/learn/courses/30/lessons/12930
[문제 설명]
문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.
[제한 조건]
- 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다.
- 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다.
문제에 '하나'의 공백을 기준으로 생각해야 한다는 조건이 필요해보인다.
def solution(s):
answer = []
for word in s.split(' '):
tmp = ''.join([x.upper() if (i+1)%2 else x.lower() for i,x in enumerate(list(word))])
answer.append(tmp)
return ' '.join(answer)
거의 유사하게 해결했지만, enumerate가 인자로 str 타입을 받기도 한다는 것을 알게되었다.
def solution(s):
return " ".join(map(lambda x: "".join([a.lower() if i % 2 else a.upper() for i, a in enumerate(x)]), s.split(" ")))
728x90
반응형
'프로그래머스 > 프로그래머스_lv1(Python)' 카테고리의 다른 글
[코딩 테스트 연습(파이썬/Python)] 프로그래머스 _ 핸드폰 번호 가리기 (0) | 2021.09.11 |
---|---|
[코딩 테스트 연습(파이썬/Python)] 프로그래머스 _ 문자열 다루기 기본 (0) | 2021.09.11 |
[코딩 테스트 연습(파이썬/Python)] 프로그래머스 _ 문자열 내림차순으로 배치하기 (0) | 2021.09.10 |
[코딩 테스트 연습(파이썬/Python)] 프로그래머스 _ 제일 작은 수 제거하기 (0) | 2021.09.10 |
[코딩 테스트 연습(파이썬/Python)] 프로그래머스 _ 약수의 합 (0) | 2021.09.10 |