[Spring#27] 개인과제 설계 및 API 구현 / 알고리즘 : 이상한 문자 만들기

김한준 Hanjun Kim·2023년 11월 16일
0

내일배움캠프

목록 보기
27/70

알고리즘 : 이상한 문자 만들기

class Solution {
    public String solution(String s) {
        String answer = "";

        String[] split = s.split(" ");

        for (int i = 0; i < split.length; i++) {
            for (int j = 0; j < split[i].length(); j++) {
                if ((j % 2) == 0 || j == 0) {
                    if ((97<= split[i].charAt(j)) && ((split[i].charAt(j) <=122))) {
                        answer += (char)(split[i].charAt(j) - 32);
                    } else {
                        answer += split[i].charAt(j);
                    }
                } else {
                    if ((65 <= split[i].charAt(j)) && (split[i].charAt(j) <= 90)) {
                        answer += (char)(split[i].charAt(j) + 32);
                    } else {
                        answer += split[i].charAt(j);
                    }
                }
            }
            if(i != split.length -1) answer += " ";
        }

        return answer;
    }
}

위와 같은 코드를 짰는데, 스터디 시간에 팀원들과 의견을 공유 해 보니 해결책이 나와서 올린다.

  1. split은 공백을 세 주지 못하기 때문에 처음에 나눌 때, 공백을 기준으로 나누지 말고
    글자를 하나하나 쪼갠다. 이때는 공백을 구분해서 넣어준다.

  2. 쪼개진 정보를 토대로 공백일때는 continue 등을 활용해서 패스

나의 오착은 '공백을 기준으로' 라는 말에 공백으로 나누고 그 다음에 문자를 나누려고 했던 것이였다.

잘 해결되어서 기쁘다!

! if문 대신 삼항연산자!

개인과제

열심히 진행중..
이상한 프로젝트 오류가 발생하여
튜터님과 상의 해 봤는데 캐시오류도 아닌거같고..
결국 프로젝트를 처음부터 만들기로 하였다
profile
개발이 하고싶은 개발지망생

0개의 댓글