[ python ] 코드업 1920 - 2진수 변환

안영우·2021년 3월 17일
0

[ Code Up ]

목록 보기
6/6
post-thumbnail

📍 코드업 1920 - 2진수 변환

코드업 1920 - 2진수 변환

⚡️ 나의 풀이

2진수를 구현하는 법을 알고 있었는데 막상 재귀함수로 풀어보려고하니까 잘 생각이 떠오르지 않았다. 핵심 코드는 이렇다.

  1. 나머지를 2로 나눈다.
  2. 출력한다.
  3. 몫을 2로 나눈다.
  4. 언제까지? n이 1보다 작아질때까지

1905번처럼 빈 리스트에 추가해서 join함수를 사용했는데, 그럴필요가 없었다. 비록 정답판정을 받았지만 30분동안 삽질하고 다른코드를 보니까 허무(?)했다.

너무 어렵게 생각하지 말자!

# 1번 어렵게 푼 문제
x = 7
result = []

while x != 0:
    result.append(x % 2)
    x //= 2
print(result)

result = []
def binary(n):
    if n == 0:
        return print(0)
    global result
    if n > 1:
        binary(n // 2)
    result.append(n % 2)
binary(int(input()))
print(''.join(map(str,result)))

# 2번 쉽게 푼 문제
def binary(n):
    if n > 1:
        binary(n // 2)
    return print(n % 2, end='')

binary(10)
profile
YW_Tech

0개의 댓글