일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- double colon
- 파이어베이스
- 1인개발
- Groovy lambda
- sql truncate
- Firebase Crashlytics
- 그루비 람다
- 예약 게시
- 프로그래머스
- 알고리즘
- Android 앱 출시
- 이중콜론
- 예약 배포
- groovy double colon
- 프로그래머스 수박수박수박수박수박수
- bookmark
- mysql 소수점 함수
- Android App 출시
- Firebase
- 안드로이드
- 파이어베이스 크래시틱스
- sql 소수점제거
- 앱출시
- 북마크
- 구글 플레이 스토어 출시
- 개발일지
- 코딩테스트
- 게시 개요
- 푸시메세지
- android
Archives
- Today
- Total
Moon_Dev_Blog :)
[프로그래머스] 이상한 문자 만들기 본문
문제설명
문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.
class Solution {
fun solution(s: String): String {
val answer = s.split(" ")
// 0: try, 1: hello, 2: world
val result = answer.map { word ->
word.mapIndexed { index, char -> // t,r,y // 0,1,2
if (index % 2 == 0) char.uppercaseChar() else char.lowercaseChar()
}.joinToString("")
}.joinToString(" ")
return result
}
}
풀이방법
// #. "try hello world" -> "TrY HeLlO WoRlD"
// #. map은 새롭게 리스트를 반환한다.
// 1. 단어별 나머지 연산을 통해서 인덱스 홀짝 구분 후 대소문자 변경
// 2. joinToString("") 스트링으로 만들며 반환 후 word 람다 블럭에서 공백을 추가하여 스트링으로 변환
'IT > 알고리즘풀이' 카테고리의 다른 글
[프로그래머스] 실패율 (1) | 2025.01.19 |
---|---|
[프로그래머스] K번째수 (0) | 2025.01.06 |
[프로그래머스] 로그인 성공? (0) | 2024.12.30 |
[프로그래머스] 전국 대회 선발 고사 (1) | 2024.12.28 |
[프로그래머스] 문자열 여러 번 뒤집기 (5) | 2024.12.23 |
Comments