Notice
Recent Posts
Recent Comments
Link
코드로 우주평화
Ones and Zeros 본문
반응형
문제 설명
Given an array of ones and zeroes, convert the equivalent binary value to an integer.
Eg: [0, 0, 0, 1] is treated as 0001 which is the binary representation of 1.
Examples:
Testing: [0, 0, 0, 1] ==> 1
Testing: [0, 0, 1, 0] ==> 2
Testing: [0, 1, 0, 1] ==> 5
Testing: [1, 0, 0, 1] ==> 9
Testing: [0, 0, 1, 0] ==> 2
Testing: [0, 1, 1, 0] ==> 6
Testing: [1, 1, 1, 1] ==> 15
Testing: [1, 0, 1, 1] ==> 11
제한 사항
However, the arrays can have varying lengths, not just limited to 4.
해결 방법
1. arr안의 숫자들을 합쳐서 2진수 로 만들다.
2. 2진수에 대한 10진수 값을 구한다.
def binary_array_to_number(arr):
bin_str = ''.join([str(i) for i in arr])
result = int(bin_str, 2)
return result
배열안에 있는 숫자들을 str로 바꾸어 join으로 합쳐주었다.
int에서 문자열로 된 다른 숫자체계를 넣고,
두번째 인수로 해당 숫자체계의 수를 넣어주면(여기서는 2진수이므로 '2') 10진수 값으로 반환해준다.
다른 숫자체계를 10진수로 바꾸는 방법을 새롭게 알게되었다.
반응형
'나는 이렇게 학습한다 > Algorithm & SQL' 카테고리의 다른 글
Create Phone Number (0) | 2022.02.14 |
---|---|
Array.diff (0) | 2022.02.13 |
Friend or Foe? (0) | 2022.02.11 |
Tribonacci Sequence (0) | 2022.02.10 |
[자료구조] 스택과 큐 Python 코드로 구현해보았다. (0) | 2022.02.09 |