๋ฐ์ํ
Question
์ ์ถ๋ ฅ ์์
My Code
function solution(num) {
let i = 0 ;
while (i < 500) {
if (num === 1 ) {return i ;}
(num % 2 === 0 ? num = num / 2 : num = (num * 3) + 1);
i++;
} return -1;
}
HOW? (ํ์ด๋ฐฉ๋ฒ)
๋ฌธ์ ์ ๋์์๋ ์กฐ๊ฑด๋ค์ ์ ๋๋ ์ฃผ๊ณ ์ผํญ์ฐ์ฐ์๋ฅผ ์ด์ฉํด ์ฝ๋๋ฅผ ์ค์ด๋ฉด ๊น๋ํ ์ฝ๋๊ฐ ๋๋ค.
- while๋ฌธ์ด ์์ ํ์ ๋ง์ง๋ ธ์ ์ธ 500๋ฒ์ด ๋์ด๊ฐ์ง ์๋๋ก ์ค์ ํ๋ค.
- ์ ๋ ฅ๋ ์ซ์์ ์ง์, ํ์ ์ฌ๋ถ์ ๋ฐ๋ผ if๋ฌธ์ผ๋ก ์กฐ๊ฑด์ ์ค์ ํ๊ณ ๊ฐ๊ฐ ๋ง๋ ๊ณ์ฐ๋ฒ์ ๋ฆฌํดํ๋ค.
- num์ ๊ฒ์ฐ์ด ๋๋ ํ ์์ ํ์ i++๋ฅผ ํด์ค๋ค.
- num์ด 1์ด ๋๋ฉด ์์ ํ์ i๋ฅผ retrun ํ๋ค.
- ์์ ํ์๊ฐ 500๋ฒ์ด ๋์ด๊ฐ๋ฉด -1์ return ํ๋ค.
๋ฐ์ํ
'Algorithms > Programmers' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[JS] ํ๋ก๊ทธ๋๋จธ์ค : ์ฒด์ก๋ณต (0) | 2022.05.19 |
---|---|
[JS] ํ๋ก๊ทธ๋๋จธ์ค : ์ ์ ๋ด๋ฆผ์ฐจ์์ผ๋ก ๋ฐฐ์นํ๊ธฐ (0) | 2022.05.17 |
[JS] ํ๋ก๊ทธ๋๋จธ์ค : ํ์ค๋ ์ (0) | 2022.05.14 |
[JS] ํ๋ก๊ทธ๋๋จธ์ค : ์ฝ์์ ํฉ (0) | 2022.05.04 |
[JS] ํ๋ก๊ทธ๋๋จธ์ค : ์ง์์ ํ์ (0) | 2022.04.11 |