[문제설명]
문자열 s는 한 개 이상의 단어로 구성되어 있습니다. 각 단어는 하나 이상의 공백문자로 구분되어 있습니다. 각 단어의 짝수번째 알파벳은 대문자로, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수, solution을 완성하세요.
[제한사항]
- 문자열 s의 길이 : 50 이하의 자연수
- 문자열 s는 알파벳으로만 이루어져 있습니다.
[입출력 예]
s | return |
"try hello world" | "TrY HeLlO WoRlD" |
class Solution {
public String solution(String s) {
String answer = "";
String[] arr = s.split("");
int cnt = 0;
for(int i=0; i<arr.length; i++) { // 각 단어 검사
cnt = arr[i].contains(" ") ? 0 : cnt + 1;
answer += cnt%2==0 ? arr[i].toLowerCase() : arr[i].toUpperCase();
}
return answer;
}
}
주어진 테스트 케이스와 내가 직접 추가한 테스트 케이스는 통과 했는데,
몇몇 테스트 케이스에서 실패가 떴다.
다른 사람의 코드를 참고해서 다시 풀어봤다.
확실히 삼항연산자를 사용하면 코드가 간단해지는 것 같다.
삼항연산자를 익숙하게 사용할 줄 알면 코드를 짜는데 많은 도움이 될 것 같아서 쓰는 습관을 들여야겠다.
'Algorithm > Programmers' 카테고리의 다른 글
Programmers / Level 1 / 서울에서 김서방 찾기 (0) | 2022.06.22 |
---|---|
Programmers / Level 1 / 문자열 내 마음대로 정렬하기 (0) | 2022.06.22 |
Programmers / Level 1 / 문자열 내 p와 y의 개수 (0) | 2022.06.21 |
Programmers / Level 1 / 약수의 합 (0) | 2022.06.21 |
Programmers / Level 1 / 문자열 다루기 기본 (0) | 2022.06.20 |