Just Do IT!
[프로그래머스 Level 1] 12930. 이상한 문자 만들기 (Python) 본문
728x90
반응형
문제 설명
문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.
제한 사항
- 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다.
- 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다.
입출력 예
s | return |
"try hello world" | "TrY HeLlO WoRlD" |
입출력 예 설명
"try hello world"는 세 단어 "try", "hello", "world"로 구성되어 있습니다. 각 단어의 짝수번째 문자를 대문자로, 홀수번째 문자를 소문자로 바꾸면 "TrY", "HeLlO", "WoRlD"입니다. 따라서 "TrY HeLlO WoRlD" 를 리턴합니다.
def solution(s):
answer = ''
new_list = s.split(' ')
for i in new_list:
for j in range(len(i)):
if j % 2 == 0:
answer += i[j].upper()
else:
answer += i[j].lower()
answer+= ' '
return answer[0:-1]
+) 자바스크립트로 다른 분이 푼 풀이
function toWeirdCase(s){
var result = ""
var a = s.split(' ');
for(var i = 0; i < a.length; i++){
for(var j = 0; j < a[i].length; j++){
if(j % 2) result += a[i][j].toLowerCase();
else result += a[i][j].toUpperCase();
if(j === a[i].length-1 && i !== a.length-1) result += ' ';
}
}
return result;
}
너무 오랜만(?)에 파이썬으로 알고리즘을 풀어봤고...확실히 자바스크립트로 1시간 넘게 고민하던 걸 파이썬으로 푸니까 훨씬 괜찮아보인다...내 기분 탓인 걸까...?ㅋㅋ
도저히 안 풀려서 파이썬으로 풀고 난 뒤에 자바스크립트로 푼 풀이를 보는데...이해는 되는데 막상 직접 풀려고 하니까 쉽지 않았다. 내일 멀쩡한 정신(!)으로 다시 공부해봐야지
알고리즘 문제는 늘 어려운 것 같다...ㅠ
728x90
'코딩테스트 준비 > Level 1' 카테고리의 다른 글
[프로그래머스 Level 1] 12982. 예산 (JavaScript) (0) | 2023.04.04 |
---|---|
[프로그래머스 Level 1] 68935. 3진법 뒤집기 (JavaScript) (0) | 2023.04.03 |
[프로그래머스 Level 1] 12906. 같은 숫자는 싫어 (JavaScript) (0) | 2023.03.28 |
[프로그래머스 Level 1] 12950. 행렬의 덧셈 (JavaScript) (0) | 2023.03.27 |
[프로그래머스 Level 1] 12944. 평균 구하기 (JavaScript / Python) (0) | 2023.03.24 |