반응형
SMALL
오늘은 DAY OFF였지만 정말 조금이라도 공부하는 습관을 잃지 않고자 집에 들어와 밤늦게 노트북을 켜고 책상앞에 앉았다. Level 1 문제를 풀었는데, 6점이나 받아서 놀랐다. 며칠 전 훨씬 어려웠던 Level 2는 4점이었는데... 무슨 기준으로 점수를 주는건지 잘 모르겠다.
프로그래머스 <이상한 문자 만들기> 문제 보기
https://school.programmers.co.kr/learn/courses/30/lessons/12930
프로그래머스
코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.
programmers.co.kr
프로그래머스 <이상한 문자 만들기> 문제 풀이
def solution(s):
answer = ''
words = s.split(' ')
for i in words:
for k in range(len(i)):
if k % 2 == 0:
answer += i[k].upper()
else:
answer += i[k].lower()
answer += ' '
return answer[:-1]
문자열이 아니라 단어를 기준으로 하여 인덱스가 홀수일 경우에는 대문자로, 짝수일 경우에는 소문자로 바꾸어 문자열을 return 하는 문제다. 따라서 단어별 체크를 위해 split을 사용하여 리스트에 우선 담아준 후 리스트에 담긴 각 단어별로 for문을 돌며 인덱스의 홀수짝수 여부를 판단하여 대문자/소문자로 바꿀 수 있도록 코드를 구현하였다. 이후 마지막에 문자열에 공백이 추가로 붙어버리기 때문에 [:-1]까지만 반환해주었다.
다른 풀이
def solution():
return " ".join(map(lambda x: "".join([a.lower() if i % 2 else a.upper() for i, a in enumerate(x)]), s.split(" ")))
한 줄 풀이를 보고 감탄하며 가져왔다. 참 코딩 잘하는 사람들이 많다!
오늘은 여기저기 돌아다녔더니 10000보 정도 걸었다. 오랜만에 오래 걸은 탓인지 다리가 너무 아프다. 빨리 씻고 자야지..
반응형
LIST
'알고리즘 공부 > 코딩테스트(프로그래머스)' 카테고리의 다른 글
[프로그래머스 Level 2] 피로도 (Python 파이썬) 풀이 방법 (0) | 2023.01.10 |
---|---|
[프로그래머스 Level 1] [1차] 다트 게임 (Python 파이썬) 풀이 방법 (2) | 2023.01.09 |
[프로그래머스 Level 2] 이모티콘 할인행사 (Python 파이썬) 풀이 방법 (0) | 2023.01.06 |
[프로그래머스 Level 2] 귤 고르기 (Python 파이썬) 풀이 방법 (1) | 2023.01.05 |
[프로그래머스 Level 1] 최소직사각형 (Python 파이썬) 풀이 방법 (0) | 2023.01.04 |