๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
๐Ÿงฉ ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค/๐Ÿต ์•Œ๊ณ ๋ฆฌ์ฆ˜ ํ’€์ด(Java)

๋‚˜๋จธ์ง€๊ฐ€ 1์ด ๋˜๋Š” ์ˆ˜ ์ฐพ๊ธฐ

by carrot0911 2024. 11. 2.

๋ฌธ์ œ ์„ค๋ช…

์ž์—ฐ์ˆ˜ n์ด ๋งค๊ฐœ๋ณ€์ˆ˜๋กœ ์ฃผ์–ด์ง‘๋‹ˆ๋‹ค. n์„ x๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๊ฐ€ 1์ด ๋˜๋„๋ก ํ•˜๋Š” ๊ฐ€์žฅ ์ž‘์€ ์ž์—ฐ์ˆ˜ x๋ฅผ return ํ•˜๋„๋ก solution ํ•จ์ˆ˜๋ฅผ ์™„์„ฑํ•ด ์ฃผ์„ธ์š”. ๋‹ต์ด ํ•ญ์ƒ ์กด์žฌํ•จ์€ ์ฆ๋ช…๋  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ œํ•œ ์‚ฌํ•ญ

  • 3 ≤ n ≤  1,000,000

์ž…์ถœ๋ ฅ ์˜ˆ

n result
10 3
12 11

์ž…์ถœ๋ ฅ ์˜ˆ ์„ค๋ช…

์ž…์ถœ๋ ฅ ์˜ˆ #1

  • 10์„ 3์œผ๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๊ฐ€ 1์ด๊ณ , 3๋ณด๋‹ค ์ž‘์€ ์ž์—ฐ์ˆ˜ ์ค‘์—์„œ ๋ฌธ์ œ์˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ˆ˜๊ฐ€ ์—†์œผ๋ฏ€๋กœ, 3์„ return ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ž…์ถœ๋ ฅ ์˜ˆ #2

  • 12๋ฅผ 11๋กœ ๋‚˜๋ˆˆ ๋‚˜๋จธ์ง€๊ฐ€ 1์ด๊ณ , 11๋ณด๋‹ค ์ž‘์€ ์ž์—ฐ์ˆ˜ ์ค‘์—์„œ ๋ฌธ์ œ์˜ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•˜๋Š” ์ˆ˜๊ฐ€ ์—†์œผ๋ฏ€๋กœ, 11์„ return ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

 

๋‚ด๊ฐ€ ์ž‘์„ฑํ•œ ์ฝ”๋“œ

class Solution {
    public int solution(int n) {
        int answer = 1000000;
        
        for (int x = n; x > 0; x--) {
            if (n % x == 1) {
                if (answer > x) {
                    answer = x;
                }
            }
        }
        return answer;
    }
}

์ฝ”๋“œ ์„ค๋ช…

๋ฐ˜๋ณต๋ฌธ์„ ํ†ตํ•ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์„ ๊ฒƒ ๊ฐ™๋‹ค๊ณ  ์ƒ๊ฐํ•˜๊ณ  ์–ด๋–ป๊ฒŒ ๋ฐ˜๋ณต๋ฌธ์„ ์ฑ„์›Œ๋‚˜๊ฐ€๋ฉด ์ข‹์„์ง€ ์ƒ๊ฐํ•ด ๋ดค๋‹ค. ๐Ÿค”๐Ÿค”
๋‚˜๋ˆ„๋Š” ์ˆ˜์ธ x๊ฐ€ n๋ถ€ํ„ฐ ์‹œ์ž‘ํ•ด์„œ 1๊นŒ์ง€ ๋‚ด๋ ค์˜ค๋ฉด์„œ n์„ ๋‚˜๋ˆ„์—ˆ์„ ๋•Œ ๋‚˜๋จธ์ง€๊ฐ€ 1์ด ๋œ๋‹ค๋ฉด answer์— ์ง‘์–ด๋„ฃ๋Š” ๊ณผ์ •์„ ๋– ์˜ฌ๋ฆด ์ˆ˜ ์žˆ์—ˆ๋‹ค. ๋‹ค์Œ์œผ๋กœ ๋‚˜๋จธ์ง€๊ฐ€ 1์ด ๋˜๊ฒŒ ํ•˜๋Š” ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜๋ฅผ ์ง‘์–ด๋„ฃ์–ด์•ผ ํ•˜๋Š” ๊ฒƒ์ด ๋ฌธ์ œ์˜ ๋‹ต์ด์—ฌ์„œ ์ด์ค‘ ์กฐ๊ฑด๋ฌธ์„ ์‚ฌ์šฉํ•˜์—ฌ answer์˜ ๊ฐ’๊ณผ x๋ฅผ ๋น„๊ตํ•˜์—ฌ answer > x์ผ ๊ฒฝ์šฐ์— answer = x; ๋ฅผ ์ด์šฉํ•˜์—ฌ ๊ฐ€์žฅ ์ž‘์€ ์ˆ˜๊ฐ€ answer ๊ฐ’์ด ๋˜๋„๋ก ๋งŒ๋“ค์–ด ์ฃผ์—ˆ๋‹ค!
answer์˜ ์ดˆ๊ธฐ๊ฐ’์€ n์˜ ๊ฐ€์žฅ ํฐ ์ˆ˜์ธ 1,000,000์œผ๋กœ ์žก์•„์ฃผ๊ณ  ์ ์  ์ž‘์€ ์ˆ˜๋กœ ๋ฐ”๋€” ์ˆ˜ ์žˆ๊ฒŒ๋” ์„ค์ •ํ•ด์ฃผ์—ˆ๋‹ค!