코딩테스트/프로그래머스

[프로그래머스] [Level 2] 이진 변환 반복하기

박소민 2022. 9. 12. 15:43
이진 변환 반복하기
 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

 

  • 내 풀이
    • list 내에서 for문 , if문 사용하는 경우
      • if문만 쓰는 경우: for문 먼저 
      • if-else 문까지 작성하는 경우: if-else문 먼저 [식1 if 조건문 else 식2 for~]
        • else 의 식2도 리스트에 들어가는 값이어야 함
        • 전혀 다른 변수 사용하는 경우 에러
    • 10진수 → N진수 : format(숫자, 'b')
    • https://yygs321.tistory.com/74?category=1002107
 

[Python] 2진수 / 8진수 / 16진수 / n진수 변환

2진수 / 8진수 / 16진수 표현 앞에 접두어를 붙여 구분한다 2진수 : 0b 8진수 : 0o 16진수 : 0x print(42==0b101010) #결과 True 숫자 10진수 → 2진수 / 8진수 / 16진수 변환 파이썬 내장함수 사용 접두어가..

yygs321.tistory.com

def solution(s):
    count=0
    zero=0
    answer=[]
    while s!="1":
        result=""
        count+=1
        for i in s:
            if i=="0":
                zero+=1
            else:
                result+=i
        s=str(format(len(result),'b'))
        
    answer.append(count)
    answer.append(zero)
    return answer