https://programmers.co.kr/learn/courses/30/lessons/12930
문제
문자열 s는 한 개 이상의 단어로 구성. 각 단어는 하나 이상의 공백문자로 구분. 각 단어의 짝수번째 알파벳은 대문자, 홀수번째 알파벳은 소문자로 바꾼 문자열을 리턴하는 함수를 완성하시오.
제한조건
문자열 전체의 짝/홀수 인덱스가 아니라, 단어(공백을 기준)별로 짝/홀수 인덱스를 판단해야 함
첫 번째 글자는 0번째 인덱스로 보아 짝수번째 알파벳으로 처리해야 함
.java
class Solution {
public String solution(String s) {
String answer = "";
String[] st = s.split("");
int idx = 0;
//1.입력받는 문자열 길이만큼 반복
for(int i=0; i<st.length; i++){
//1-1.공백이 나오면 인데스값 초기화해서 단어 별로 처리
if(st[i].equals(" ")){
idx=0;
}
//1-2.짝수 인데스일 경우
else if(idx %2 == 0){
//대문자로 변환
st[i] = st[i].toUpperCase();
//다음 인덱스로 넘어가기
idx++;
}
//1-3.
else{//홀수 인덱스일 경우
//소문자로 변환
st[i] = st[i].toLowerCase();
//다음 인덱스로 넘어가기
idx++;
}
//1-4.바꾼 값을 answer에 하나씩 더하기
answer += st[i];
}
return answer;
}
}
실행 결과
'공부하자 > 알고리즘' 카테고리의 다른 글
[프로그래머스] Lv.1 숫자 문자열과 영단어 java (0) | 2022.04.28 |
---|---|
[프로그래머스] Lv.1 음양 더하기 java (0) | 2022.04.28 |
[프로그래머스] Lv.1 내적 java (0) | 2022.04.26 |
[프로그래머스] Lv.1 정수 제곱근 판별 java (0) | 2022.04.24 |
[프로그래머스] Lv.1 두 개 뽑아서 더하기 java (0) | 2022.04.22 |