코딩 테스트/프로그래머스
Lv.0 코드 처리하기
whooooo
2023. 12. 6. 00:17
✏️ 문제
https://school.programmers.co.kr/learn/courses/30/lessons/181932
Python
def solution(code):
mode = 0 # 0과 1이 존재, False
ret = ""
for idx in range(0, len(code)) :
str = code[idx]
if str == "1" :
mode = not mode
else :
if (idx % 2 == mode):
ret += str
return "EMPTY" if ret == "" else ret
다른 사람의 문제 풀이
미쳤다...
def solution(code):
return "".join(code.split("1"))[::2] or "EMPTY"
Java
class Solution {
public String solution(String code) {
int mode = 0;
String ret = "";
for (int i = 0; i < code.length(); i++) {
if (code.charAt(i) == '1') {
mode = 1 - mode; // 0,1 값 변경
} else {
if (i % 2 == mode) ret += code.charAt(i);
}
}
return "".equals(ret) ? "EMPTY" : ret;
}
}