-
https://school.programmers.co.kr/learn/courses/30/lessons/12911
프로그래머스 다음 큰 숫자 문제입니다.
아이디어
Greedy문제입니다. 비트에 대한 이해도를 판단 할 수 있는 문제로 느껴집니다.
아래의 풀이가 어렵다면 비트 관련 문제를 풀어보시는 것을 추천드립니다.
#include <string> #include <vector> using namespace std; //bit 개수 return int getBitCount(int n) { int bitCnt = 0; while (n) { if (n % 2) bitCnt++; n /= 2; } return bitCnt; } int solution(int n) { int bitCnt = getBitCount(n); //비트 개수가 같은 수를 찾을때까지 반복 while (1) { n++; if (bitCnt == getBitCount(n)) break; } int answer = n; return answer; }
'알고리즘 > 프로그래머스' 카테고리의 다른 글
Programers 큰 수 만들기 (0) 2022.07.26 Programsers 구명보트 (0) 2022.07.26 Programers 다리를 지나는 트럭 (0) 2022.07.26 Programers 더 맵게 (0) 2022.07.26 Programers 입국 심사 (0) 2022.07.26 댓글