let's get IT with DAVINA ๐Ÿ’ป

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]Lv0. ํ”ผ์ž๋‚˜๋ˆ ๋จน๊ธฐ(2) ๐Ÿ• ๋ณธ๋ฌธ

DEV_IN/๋ฌธ์ œํ’€์ด

[ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค]Lv0. ํ”ผ์ž๋‚˜๋ˆ ๋จน๊ธฐ(2) ๐Ÿ•

๋‹ค๋นˆ์น˜์ฝ”๋“œ๐Ÿ’Ž 2023. 3. 8. 13:07

โ“ ๋ฌธ์ œ ์„ค๋ช…

๋จธ์“ฑ์ด๋„ค ํ”ผ์ž๊ฐ€๊ฒŒ๋Š” ํ”ผ์ž๋ฅผ ์—ฌ์„ฏ ์กฐ๊ฐ์œผ๋กœ ์ž˜๋ผ ์ค๋‹ˆ๋‹ค. ํ”ผ์ž๋ฅผ ๋‚˜๋ˆ ๋จน์„ ์‚ฌ๋žŒ์˜ ์ˆ˜ n์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์งˆ ๋•Œ, n๋ช…์ด ์ฃผ๋ฌธํ•œ ํ”ผ์ž๋ฅผ ๋‚จ๊ธฐ์ง€ ์•Š๊ณ  ๋ชจ๋‘ ๊ฐ™์€ ์ˆ˜์˜ ํ”ผ์ž ์กฐ๊ฐ์„ ๋จน์–ด์•ผ ํ•œ๋‹ค๋ฉด ์ตœ์†Œ ๋ช‡ ํŒ์„ ์‹œ์ผœ์•ผ ํ•˜๋Š”์ง€๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด๋ณด์„ธ์š”.

๐Ÿšซ ์ œํ•œ์‚ฌํ•ญ

1 ≤ n ≤ 100

๐Ÿ—๏ธ ์ž…์ถœ๋ ฅ ์˜ˆ

n result
6 1
10 5
4 2

โ—๏ธ ๋น„๋‹ˆ's ํ’€์ด

n์ด 6์˜ ๋ฐฐ์ˆ˜๊ฐ€ ๋˜๋Š” ์ˆœ๊ฐ„๊นŒ์ง€ ๊ณ„์† n์—๋„ k๋ฅผ ๊ณฑํ•ด์ฃผ๋ฉฐ ์ฃผ์„์˜ ์‹์„ ๋งŒ๋“ค๋ ค๋‹ค ๋ณด๋‹ˆ ์‹œ๊ฐ„ ์ดˆ๊ณผ๋กœ ํ…Œ์ŠคํŠธ๋ฅผ ํ†ต๊ณผํ•˜์ง€ ๋ชปํ–ˆ๋‹ค..

๊ฒฐ๊ตญ ์—ฌ๋Ÿฌ ๊ฒ€์ƒ‰์„ ํ•ด๋ณธ ๋’ค, ์• ์ดˆ์— k=6์œผ๋กœ ํ• ๋‹นํ•˜์—ฌ 6์˜๋ฐฐ์ˆ˜๋ฅผ ๋Š˜๋ ค๋‚˜๊ฐ€๋ฉฐ n์œผ๋กœ ๋‚˜๋ˆ ๋–จ์–ด์ง€๋Š” ์ˆœ๊ฐ„๊นŒ์ง€ k๋ฅผ ๋Š˜๋ ค์ฃผ๋ฉด ๋˜๋Š”๊ฑฐ์˜€๋‹ค.. ๋‚˜๋Š” n์„ ์–ด๋–ป๊ฒŒ๋“  ๋ฐ”๊พธ๋ ค๊ณ  ๊ณ„์† ๋Œ€์ž…ํ•˜๊ณ  ๋ฐ”๊ฟจ๋Š”๋ฐ ๋’ค์งš์–ด์„œ ์ƒ๊ฐํ•ด๋ดค์–ด์•ผํ•œ๋‹ค..!!!

function solution(n) {
    let k=6;
    while(k%n!==0){
        k=k+6;
    }
    return k/6;
}
//n*k===6*k๊ฐ€ ๋˜๋Š” ์ˆœ๊ฐ„ ๊นŒ์ง€ k์ฆ๊ฐ€ (n์ด 6์˜ ๋ฐฐ์ˆ˜๊ฐ€ ๋˜๋Š” ์ˆœ๊ฐ„๊นŒ์ง€)
//์ด k๋ฅผ ํŒ์ˆ˜๋กœ ์„ค์ •ํ–ˆ๋Š”๋ฐ ์ด ์‹์„ ์„ธ์šด๊ฒƒ๋„ ์‹ ์ž์ฒด๋„ ์ž˜๋ชป๋์—ˆ์Œ..n์„ ๊ฑด๋“ค๋ฉด ์•ˆ๋์Œ..

๐Ÿ‘€ others' ํ’€์ด

๊ทธ๋ ‡๊ฒŒ ์œ ํด๋ฆฌ๋“œ ํ˜ธ์ œ๋ฒ•์„ ๊ณต๋ถ€ํ•ด๋†“๊ณ  ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜๋ฅผ ์ฐพ์œผ๋ฉด ๋œ๋‹ค๋Š” ์ƒ๊ฐ์„ ๋ชปํ•˜์—ฌ ๊ฟˆ์—๋„ ๋ชฐ๋ž๋‹ค..

function solution(n) {
    let a=n;
    let b=6;
    //์ตœ๋Œ€๊ณต์•ฝ์ˆ˜ ๊ตฌํ•˜๊ธฐ
    while(a%b!==0){
        let r=a%b;
        if(r!==0){
            a=b;
            b=r; 
        }
    }
    //์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜ = ๋‘ ์ˆ˜์˜ ๊ณฑ / ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜
    let lcm=(n*6)/b;
    //ํ”ผ์ž ํ•œํŒ๋‹น 6์กฐ๊ฐ์ด๋‹ˆ ๋ช‡ํŒ?
    return lcm/6;
}

//n๊ณผ 6์˜ ์ตœ์†Œ๊ณต๋ฐฐ์ˆ˜
Comments