카테고리 없음
[cote] 프로그래머스 - 이상한 문자 만들기
DuL2
2022. 10. 22. 23:30
문제 설명
문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.
제한 사항
- 문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야합니다.
- 첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 합니다.
입출력 예
s | return |
"try hello world" | "TrY HeLlO WoRlD" |
First Try
실패~~~
public String solution(String s) {
String answer = "";
String[] sArr = s.split(" ");
for (int i = 0; i < sArr.length; i++) {
System.out.println(sArr[i]);
String[] split = sArr[i].toLowerCase().trim().split("");
for (int j = 0; j < split.length; j++) {
if (j % 2 == 0) {
answer += split[j].toUpperCase();
} else {
answer += split[j].toLowerCase();
}
}
answer += " ";
}
return answer.trim();
}
예상 결과
입출력 예상 결과의 예시인 "try hello world"을 넣으면 잘되지만 다른 반례가 있다.
이유는 문제를 잘 읽어야한다.
각 단어는 하나 이상의 공백문자로 구분되어 있습니다
하나 이상의 공백 문자. Split으로 쪼갤 때 공백이 2개 이상이라면 문제가 생긴다. 예시를 보자