https://school.programmers.co.kr/learn/courses/30/lessons/12911
10진수의 숫자를 2진수로 변환한 후 숫자 1의 개수를 세야하는 문제이다.
이전에 10진수를 2진수로 바꾸는 문제는 풀어보았고
블로그에도 정리를 해놨기 때문에 문제는 바로 풀 수 있었지만
단순히 2로 나누어 가며 나머지를 구하는 방법 말고
bitset 을 이용하여 바로 1의 개수를 구하는 방법도 있다.
#include <string>
#include <vector>
using namespace std;
int cal_one_cnt(int n)
{
int one_cnt = 0;
while(n > 0)
{
if (n % 2 == 1)
one_cnt++;
n /= 2;
}
return one_cnt;
}
int solution(int n) {
int answer = 0;
int N_one_cnt = cal_one_cnt(n);
int next_max;
while(1)
{
next_max = ++n;
if (N_one_cnt == cal_one_cnt(next_max))
{
answer = next_max;
break;
}
}
return answer;
}
#include <bitset>
using namespace std;
int solution(int n) {
int num = bitset<20>(n).count();
while (bitset<20>(++n).count() != num);
return n;
}
플러터 앱을 개발하기 위해 개발 동아리 회의를 진행하였다.
회의를 여러 번 진행하였지만 확실히 미리 오늘 회의 주제와 하고 싶은 얘기, 전달할 것들, 다음 계획을 미리미리
준비해야만 다같이 얘기하며 진행되는 회의가 되는 듯 하다.
회의 준비는 최소 하루 전에 했던 것과 해야할 것들을 점검하면서 준비할 필요가 있다!!