현지
Home
  • 전체
    • CT
      • SWEA
      • 백준
      • 프로그래머스
    • CS
      • 알고리즘
      • 자료구조
      • Python
      • JAVA
      • SQL
      • 웹개발
    • 실습
      • 프로젝트
      • Brity RPA
      • Outsystems
    • 일상
Home
  • 전체
    • CT
      • SWEA
      • 백준
      • 프로그래머스
    • CS
      • 알고리즘
      • 자료구조
      • Python
      • JAVA
      • SQL
      • 웹개발
    • 실습
      • 프로젝트
      • Brity RPA
      • Outsystems
    • 일상
블로그 내 검색
GITHUB

현지

현지의 개발일지

  • CT/프로그래머스

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

    2023. 6. 18.

    by. hyunji1109

    https://school.programmers.co.kr/learn/courses/30/lessons/70129

     

    프로그래머스

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

    programmers.co.kr

    ✔ 문제 설명
    0과 1로 이루어진 어떤 문자열 x에 대한 이진 변환을 다음과 같이 정의합니다.

    1. x의 모든 0을 제거합니다.
    2. x의 길이를 c라고하면,x를 "c를 2진법으로 표현한 문자열"로 바꿉니다.

    1. s가 "1"이 될때까지 
    2. s의 "0"갯수를 세서 더해준다.
    3. s의 "1"갯수를 세서 2진법으로 바꿔준다. 
    4. 계속 반복한다.

     

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    def solution(s):
        answer = []
        zerocnt = 0
        onecnt = 0
        cnt = 0
        
        while s != '1':
            zerocnt += s.count("0")
            onecnt = s.count("1")
            cnt += 1
            s = bin(onecnt)[2:]
            
        
        answer.append(cnt)
        answer.append(zerocnt)
        return answer
    cs

     


     

    ▪ s = bin(onecnt)[2:] 를 하는 이유 bin사용시 2진법임을 알려주는 "0b"가 함께 출력되기때문

     

    bin(60) #2진법
    oct(60) #8진법
    hex(60) #16진법
    
    0b111100
    0o74
    0x3c

    'CT > 프로그래머스' 카테고리의 다른 글

    [프로그래머스][Lv. 2][Python] 다음 큰 숫자  (0) 2023.06.19
    [프로그래머스][Lv. 2][Python] 숫자의 표현  (0) 2023.06.18
    [프로그래머스][Lv. 2][Python] 최솟값 만들기  (0) 2023.06.18
    [프로그래머스][Lv. 2][Python] 올바른 괄호  (1) 2023.06.17
    [프로그래머스][Lv. 2][Python] JadenCase 문자열 만들기  (1) 2023.06.17

    댓글

    관련글

    • [프로그래머스][Lv. 2][Python] 다음 큰 숫자 2023.06.19
    • [프로그래머스][Lv. 2][Python] 숫자의 표현 2023.06.18
    • [프로그래머스][Lv. 2][Python] 최솟값 만들기 2023.06.18
    • [프로그래머스][Lv. 2][Python] 올바른 괄호 2023.06.17
    맨 위로
전체 글 보기
  • GITHUB
Tistory 로그인
Tistory 로그아웃
로그아웃 글쓰기 관리

Today

Total

Designed by Nana
블로그 이미지
hyunji1109

티스토리툴바