[TIL] 20240306

Xtraa·2024년 3월 7일
0

TIL

목록 보기
42/99

공부한 내용

1. 코딩테스트

  • 프로그래머스

문제

프로그래머스 - 코드 처리하기

첫 코드

class Solution {
    public String solution(String code) {
        String ret = "";
        char[] c_code = code.toCharArray();
        int mode = 0;
        for (int i = 0; i < c_code.length; i++) {
            if (mode == 0) {
                if (c_code[i] != '1') {
                    if (i % 2 == 0) {
                        ret += String.valueOf(c_code[i]);
                    }
                }
                if (c_code[i] == '1') {
                    mode = 1;
                }
            } else {
                if (c_code[i] != '1') {
                    if (i % 2 != 0) {
                        ret += String.valueOf(c_code[i]);
                    }
                }
                if (c_code[i] == '1') {
                    mode = 0;
                }
            }
        }

        if (ret.equals("")) {
            ret = "EMPTY";
        }

        return ret;
    }
}

개선된 코드

class Solution {
    public String solution(String code) {
        String ret = "";
        char[] c_code = code.toCharArray();
        int mode = 0;
        
        for (int i = 0; i < c_code.length; i++) {
            if (c_code[i] == '1') {
                mode = mode == 0 ? 1 : 0;
            } else if (i % 2 == mode) {
                ret += c_code[i];
            }
        } 
        
        if (ret.equals("")) {
            return "EMPTY";
        } else {
            return ret;
        }
        
    }
}

하루를 돌아보며, TMI

컨디션이 왜 이럴까~~~

profile
https://xtraa.notion.site/Xtraa-ed48ac432d354d01b5bf5b0da5ec94a9?pvs=4

0개의 댓글