본문 바로가기

bin3

[프로그래머스] 다음 큰 숫자 (Python) https://programmers.co.kr/learn/courses/30/lessons/12911 코딩테스트 연습 - 다음 큰 숫자 자연수 n이 주어졌을 때, n의 다음 큰 숫자는 다음과 같이 정의 합니다. 조건 1. n의 다음 큰 숫자는 n보다 큰 자연수 입니다. 조건 2. n의 다음 큰 숫자와 n은 2진수로 변환했을 때 1의 갯수가 같습니 programmers.co.kr bin을 활용해서 풀면 된다. 나의 풀이 def solution(n): one_count = bin(n).count('1') n+=1 while n: if one_count == bin(n).count('1'): return n else: n+=1 2021. 11. 7.
[프로그래머스] 점프와 순간 이동(Python) https://programmers.co.kr/learn/courses/30/lessons/12980 코딩테스트 연습 - 점프와 순간 이동 OO 연구소는 한 번에 K 칸을 앞으로 점프하거나, (현재까지 온 거리) x 2 에 해당하는 위치로 순간이동을 할 수 있는 특수한 기능을 가진 아이언 슈트를 개발하여 판매하고 있습니다. 이 아이언 슈 programmers.co.kr Greedy 유형 같긴 하다. 2로 나눠지면 그냥 나누고 안 나눠지면 1을 빼고 정답에는 1씩 더하면 된다. 나의 풀이 def solution(n): answer = 0 while n!=0: if n%2 ==0: n = n//2 else: n -=1 answer+=1 return answer 다른 사람 풀이 def solution(n): .. 2021. 11. 3.
[프로그래머스] 이진 변환 반복하기(Python) https://programmers.co.kr/learn/courses/30/lessons/70129 코딩테스트 연습 - 이진 변환 반복하기 programmers.co.kr 주어진 조건을 그대로 구현하면 된다. def solution(s): deleted_zero, counting = 0,0 while s !='1': deleted_zero += s.count('0') counting+=1 s = bin(s.count('1'))[2:] return [counting,deleted_zero] 2021. 11. 3.