๋ฌธ์
์ฝ๋
#include <iostream>
using namespace std;
// ์ ํ: ๋ฒ ํฐ๋ฆฌ ๋ฌ, ์๊ฐ์ด๋: ๋ฐฐํฐ๋ฆฌ ์๋ฌ
// ๊ฑฐ๊พธ๋ก ๊ณ์ฐ
int solution(int n){
int battery = 0;
while(n>2){
if(n&1){
battery++;
n--;
}
else n/=2;
}
return battery+1;
}
ํ์ด
์ฒ์์ ๋ฐฑํธ๋ํน์ผ๋ก ์์ ํ์์ ํด๋ณผ๊น ์ถ์์ง๋ง ๋๋ฌด๋๋ ํฐ ์ ๋ ฅ๊ฐ์ ํฌ๊ธฐํ๊ณ , ๊ท์น์ ์ฐพ์๋ณด๋ ค๊ณ ํ์ต๋๋ค. ์ด ๋ฌธ์ ๋ 0์์๋ถํฐ ์ถ๋ฐํ๋ ๊ฒ ์๋๋ผ n์์๋ถํฐ ๊ฑฐ๊พธ๋ก 0์ ๋ง๋ ๋ค๊ณ ์๊ฐํ๋ฉด ์ฝ์ต๋๋ค. ํ์ฌ ๊ฑฐ๋ฆฌ๊ฐ ์ง์์ผ ๋๋ ์๊ฐ์ด๋์ด๊ธฐ์ 2๋ก ๊ณ์ ๋๋ ์ฃผ๊ณ , ํ์์ผ ๋๋ -1์ ํด์ฃผ์ด ์ ํ๋ฅผ ํฉ๋๋ค.
์ต์ข ์ ์ผ๋ก 1์์ 0์ผ๋ก ๊ฐ๊ธฐ ์ํด์๋ ํญ์ ์ ํ๋ฅผ ํด์ผ ํ๋ return ๊ฐ์ +1์ ํด์ฃผ์ด ๋ฐํํฉ๋๋ค.
'Algorithm ๐ง๐ปโ๐ป > ํ๋ก๊ทธ๋๋จธ์ค(Programmers)' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[c++] ํ๋ก๊ทธ๋๋จธ์ค - ์ฌํ๊ฒฝ๋ก(Level 3) (0) | 2022.05.27 |
---|---|
[c++] ํ๋ก๊ทธ๋๋จธ์ค - ๊ฐ์ฅ ๋จผ ๋ ธ๋(Level 3) (0) | 2022.05.05 |
[c++] ํ๋ก๊ทธ๋๋จธ์ค - [3์ฐจ] ํ์ผ๋ช ์ ๋ ฌ(Level 2) (0) | 2022.05.04 |
[c++] ํ๋ก๊ทธ๋๋จธ์ค - ์ด์ง ๋ณํ ๋ฐ๋ณตํ๊ธฐ(Level 2) (0) | 2022.04.26 |
[c++] ํ๋ก๊ทธ๋๋จธ์ค - ๊ตฌ๋ช ๋ณดํธ(Level 2) (0) | 2022.04.25 |
[c++] ํ๋ก๊ทธ๋๋จธ์ค - ์ซ์์ ํํ(Level 2) (0) | 2022.04.24 |
๋๊ธ