[JAVA 문제 풀이] 257. 이상한 문자 만들기

프로그래머스 (12930)
Stupefyee's avatar
May 15, 2025
[JAVA 문제 풀이] 257. 이상한 문자 만들기
notion image
 

내가 작성한 코드

class Solution { public String solution(String s) { String[] answer = s.split(" ", -1); // 공백 기준으로 나누기, -1은 빈 문자열도 포함 // 각 단어를 순회하며 홀짝 인덱스에 따라 대문자, 소문자 변환 for(int i = 0; i < answer.length; i++) { StringBuilder sb = new StringBuilder(answer[i]); for (int j = 0; j < sb.length(); j++) { if (j % 2 == 0) { sb.setCharAt(j, Character.toUpperCase(sb.charAt(j))); } else { sb.setCharAt(j, Character.toLowerCase(sb.charAt(j))); } } answer[i] = sb.toString(); } return String.join(" ", answer); // 원소들을 공백으로 연결하여 반환 } }
 

다른 사람의 코드

class Solution { public String solution(String s) { String answer = ""; int cnt = 0; String[] array = s.split(""); // 모든 문자열 배열화 for (String ss : array) { cnt = ss.contains(" ") ? 0 : cnt + 1; // 공백 기준으로 단어 나누기 answer += cnt % 2 == 0 ? ss.toLowerCase() : ss.toUpperCase(); // 짝수 인덱스는 대문자, 홀수 인덱스는 소문자 } return answer; } }
 
Share article

stupefyee