[99클럽] 코테 스터디 7일차 TIL

문지웅·2024년 4월 4일
0

99club

목록 보기
8/9

문제: 이상한 문자 만들기

문자열 s는 한 개 이상의 단어로 구성되어 있고, 각 단어는 하나 이상의 공백문자로 구분되어 있을 때, 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수를 구하는 문제이다.

| 제한 사항

  • 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야 한다.
  • 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 한다.

풀이

  1. 문자열을 공백(" ")을 기준으로 나눈다.
  2. 나눠진 단어별로 인덱스를 구하고, 인덱스의 홀/짝에 따라 대문자 또는 소문자로 변환한다.
  3. 변환이 완료되면 다시, 문자열로 합친다.
  4. 합쳐진 문자열을 반환해준다.

JavaScript

function solution(s) {
			let answer = '';
			let temp = s.split(" ").map(
				(word) => word.split("").map(
					(c, index) => index % 2 == 0 ? c.toUpperCase() : c.toLowerCase()).join("")
			);
			answer = temp.join(" ");
			return answer;
}

Python

def solution(s):
    answer = ''
    temp = ["".join([c.upper() if index % 2 == 0 else c.lower() for index, c in enumerate(word)]) for word in s.split(" ")]
    answer = " ".join(temp)
    return answer
profile
프론트엔드 개발자입니다.

2개의 댓글

comment-user-thumbnail
2024년 4월 21일

안녕하세요, 99클럽 그룹 리더 sunni입니다!
문제의 핵심과 풀이를 잘 작성해주셨네요ㅎㅎ
게다가 자바스크립트와 파이썬 풀이 모두 작성해주시다니!!
앞으로도 힘내서 매일 TIL 도전해보세요! 화이팅입니다 :)
99클럽 https://bit.ly/3TN5TBL

1개의 답글