문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.
class Solution {
fun solution(s: String): String {
return s.split(" ").joinToString(" ") { word ->
word.mapIndexed { index, char ->
if (index % 2 == 0) {
char.uppercaseChar()
} else {
char.lowercaseChar()
}
}.joinToString("")
}
}
}
class Solution {
fun solution(s: String): String {
var answer = castingCase(s)
return answer
}
fun castingCase(string : String): String{
for (i in 0 .. string.length){
if(i%2==0){
string.toLowerCase(i)
}else{
string.toUpperCase(i)
}
}
}
}
처음 문제보고 이렇게 풀어야지 생각했는데
적고보니 toLowerCase랑 toUpperCase 안에는 string자체가 들어가고 인덱스가들어가는게아니넹..
class Solution {
fun solution(s: String): String {
var sToList : MutableList<Char> = s.toMutableList()
var castingCase = sToList.mapIndexed{index, char ->
if (index%2==0){
char.uppercaseChar()
}else{
char.lowercaseChar()
}
}
var answer = castingCase.joinToString("")
return answer
}
}
이렇게 바꿨는데.. 이거는 몇개는 통과하는데 나머지 틀림
힌트 보니까..공백문자 기준으로 인덱스가 초기화되어야할듯
class Solution {
fun solution(s: String): String {
return s.split(" ").joinToString(" ") { word ->
word.mapIndexed { index, char ->
if (index % 2 == 0) {
char.uppercaseChar()
} else {
char.lowercaseChar()
}
}.joinToString("")
}
}
}
하 시간 다돼서 그냥 구글링해서 참고해서 풀었음..ㅜ
오늘은.. 발제를가야하기때문엥.. 나중에 다시 또 해야겠다..