https://programmers.co.kr/learn/courses/30/lessons/77885#
코딩테스트 연습 - 2개 이하로 다른 비트
programmers.co.kr
나의 풀이
#include <string>
#include <vector>
#include <cmath>
using namespace std;
vector<long long> solution(vector<long long> numbers) {
vector<long long> answer;
for (long long num : numbers) {
long long n = num;
long long one;
one = -1;
for (int i = 0; n > 0; i++) {
if (n % 2 == 1) {
one = i;
}
else {
break;
}
n /= 2;
}
long long result = num + (powl(2, one) < 1 ? 1 : powl(2, one));
answer.push_back(result);
}
return answer;
}
'전공공부 > 코딩테스트' 카테고리의 다른 글
(c++) 프로그래머스 "올바른 괄호" (0) | 2022.04.15 |
---|---|
(c++) 프로그래머스 "방문 길이" (0) | 2022.04.15 |
(c++) 프로그래머스 "이진 변환 반복하기" (0) | 2022.04.13 |
(c++) 프로그래머스 "괄호 회전하기" (0) | 2022.04.13 |
(c++) 프로그래머스 "피로도" (0) | 2022.04.13 |