반응형
문제
https://school.programmers.co.kr/learn/courses/30/lessons/12951
입출력
이 문제는 프로그래머스 2단계 문제중 가장 정답률이 높은 문제이다.
딱히 생각할 부분은 없지만 공백문자에 대해서만 유의해서 코드를 작성하면 크게 어렵지는 않은 문제 였다.
해당 작성코드보다 좋은 의견이 있으면 남겨주길 바란다.
class Solution {
public static void main(String[] args) {
String s = "3people unFollowed me";
System.out.println(solution(s));
}
static public String solution(String s) {
String answer;
StringBuilder sb = new StringBuilder();
StringBuilder resultSb = new StringBuilder();
for (int i = 0; i <= s.length(); i++) {
if (i != s.length() && s.charAt(i) != ' ') {
sb.append(s.charAt(i));
} else {
System.out.println(sb);
if (sb.length() != 0) {
String beforeStr = sb.toString();
String changedStr;
boolean alphabetCheck = beforeStr.charAt(0) >= 'a' && beforeStr.charAt(0) <= 'z';
String firstChar = String.valueOf(beforeStr.charAt(0)).toUpperCase();
if (beforeStr.length() > 1 && alphabetCheck) {
changedStr = firstChar + beforeStr.substring(1).toLowerCase();
} else if (beforeStr.length() == 1 && alphabetCheck) {
changedStr = firstChar;
} else {
changedStr = beforeStr.charAt(0) + beforeStr.substring(1).toLowerCase();
}
resultSb.append(changedStr);
sb.setLength(0);
}
if (i != s.length()) resultSb.append(" ");
}
}
answer = resultSb.toString();
return answer;
}
}
느낀점
해당 문제 같은 경우도 어려운 부분은 없는 기초적인 문제이지만 공백에 대해서는 유의하여 코드를 짤 필요가 있는것 같다.
반응형
'코딩테스트(Java) > 프로그래머스 2단계' 카테고리의 다른 글
[프로그래머스] 주차 요금 계산 - JAVA (0) | 2024.02.29 |
---|---|
[프로그래머스] 최솟값 만들기 - JAVA (0) | 2024.02.28 |