코린이의 소소한 공부노트

[LeetCode/Easy] 717. 1-bit and 2-bit Characters 본문

코딩테스트 풀이/JAVA

[LeetCode/Easy] 717. 1-bit and 2-bit Characters

무지맘 2023. 3. 19. 21:59

1. Input

1) int[] bits

 

2. Output

1) 다음 규칙에 따라 숫자를 셌을 때, 마지막 수가 1비트짜리 숫자면 true를 반환

- 1비트짜리 숫자는 0뿐이다.

- 2비트짜리 숫자는 11 또는 10이다.

- bits0으로 끝난다.

 

3. Constraint

1) 1 <= bits.length <= 1000

2) bits[i]0 또는 1이다.

 

4. Example

Input: bits = [1,0,0] -> Output: true

Input: bits = [1,1,1,0] -> Output: false

설명:

- 10, 0으로 나눌 수 있다. 마지막 수가 1비트짜리 숫자이므로 true를 반환한다.

- 11, 10으로 나눌 수 있다. 마지막 수가 2비트짜리 숫자이므로 false를 반환한다.

 

5. Code

1) 첫 코드(2023/03/19)

boolean answer = true;
if(bits.length==1 && bits[0]!=0)
    answer = false;
else{
    for(int i=0 ; i<bits.length ; i++){
        if(bits[i]==1){
            i++;
            if(i==bits.length-1)
                answer = false;
        }
    }
}
return answer;