λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
μ•Œκ³ λ¦¬μ¦˜

[Java] μ†ŒμΈμˆ˜λΆ„ν•΄

by Jo__y 2022. 11. 14.

μ†ŒμΈμˆ˜λΆ„ν•΄λž€?

μ†ŒμΈμˆ˜λΆ„ν•΄λŠ” μ–΄λ–€ 수λ₯Ό μ†Œμˆ˜μΈ 인수둜 λΆ„ν•΄ν•˜λŠ” 것이닀. μ†Œμˆ˜λŠ” 1κ³Ό 자기 μžμ‹ μœΌλ‘œλ§Œ λ‚˜λˆ„μ–΄ λ–¨μ–΄μ§€λŠ” μ •μˆ˜λ₯Ό μ˜λ―Έν•œλ‹€.
μ½”λ”©ν…ŒμŠ€νŠΈ λ¬Έμ œμ—μ„œ 자주 μ ‘ν•˜κ²Œ λ˜μ–΄μ„œ μ •λ¦¬ν•˜κ²Œ λ˜μ—ˆλ‹€.

문제

μ •μˆ˜ n 이 μ£Όμ–΄μ‘Œμ„λ•Œ μ†ŒμΈμˆ˜λ₯Ό ν•œ 쀄에 ν•˜λ‚˜μ”© 좜λ ₯ν•œλ‹€.

int n = 420;
    @Test
    public void test() {
        for (int i = 2; i <= n; i++) {
            while(n % i ==0){
                System.out.println(i);
                n = n/i;
            }
        }
    }

좜λ ₯

2
2
3
5
7

풀이

  • 1은 μΈμˆ˜κ°€ μ•„λ‹ˆλ―€λ‘œ i=2 λΆ€ν„° μ‹œμž‘ν•œλ‹€.
  • n 을 i 둜 λ‚˜λˆˆ λ‚˜λ¨Έμ§€κ°€ 0μΌλ•Œ, i κ°€ n 의 μΈμˆ˜μ΄λ―€λ‘œ ν•œμ€„μ„ 좜λ ₯ν•œλ‹€.
  • n 을 i 둜 λ‚˜λˆˆ λͺ«μœΌλ‘œ μƒˆλ‘œ 할당을 ν•΄μ£Όμ–΄μ•Ό λ‹€μŒ 인수λ₯Ό 찾을 수 μžˆλ‹€.

μ°Έκ³ 
μ•Œκ³ λ¦¬μ¦˜ μ†ŒμΈμˆ˜λΆ„ν•΄ - Java 풀이
[Java]μ†ŒμΈμˆ˜λΆ„ν•΄

λ°˜μ‘ν˜•

λŒ“κΈ€