MapleStory Finger Point Cute Line Smiley Blinking Hello Kitty Angel MapleStory Finger Point

๐Ÿƒ‍โ™€๏ธprogrammers/Java

หšโ‚Šโœฉโ€งโ‚Š ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค java - ์œ ํ•œ์†Œ์ˆ˜ ํŒ๋ณ„ํ•˜๊ธฐ หšโ‚Šโœฉโ€งโ‚Š

HYEJU01 2024. 6. 3. 11:38

 

์ฒด๊ฐ Level : โ˜… โ˜… โ˜…
Review: ์—ฌํƒœ ๋ฐฐ์šด ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜, ์†Œ์ธ์ˆ˜๋ถ„ํ•ด, ๊ธฐ์•ฝ๋ถ„์ˆ˜ ๋ชจ๋‘ ์‚ฌ์šฉํ•˜๋Š” ์ฝ”๋”ฉ

 

๐Ÿ’ก ์†Œ์ˆ˜์  ์•„๋ž˜ ์ˆซ์ž๊ฐ€ ๊ณ„์†๋˜์ง€ ์•Š๊ณ  ์œ ํ•œ๊ฐœ์ธ ์†Œ์ˆ˜๋ฅผ ์œ ํ•œ์†Œ์ˆ˜๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋ถ„์ˆ˜๋ฅผ ์†Œ์ˆ˜๋กœ ๊ณ ์น  ๋•Œ ์œ ํ•œ์†Œ์ˆ˜๋กœ ๋‚˜ํƒ€๋‚ผ ์ˆ˜ ์žˆ๋Š” ๋ถ„์ˆ˜์ธ์ง€ ํŒ๋ณ„  ,  a/b๊ฐ€ ์œ ํ•œ์†Œ์ˆ˜์ด๋ฉด 1์„, ๋ฌดํ•œ์†Œ์ˆ˜๋ผ๋ฉด 2

 

 

์ผ€์ด์Šค 4,8๋ฒˆ ์˜ค๋ฅ˜ ๋ฐ˜๋ก€

import java.util.ArrayList;

class Solution {
    public int solution(int a, int b) {
        int answer = 0;
        
        ArrayList <Integer> ans = new ArrayList<>();
        
        int x = a;
        int y = b;
        
        // ์ตœ๋Œ€ ๊ณต์•ฝ์ˆ˜ ๊ตฌํ•˜๊ธฐ =>  ์œ ํด๋ฆฌ๋“œ ์•Œ๊ณ ๋ฆฌ์ฆ˜
       while (x != 0) {           
           int temp = x;            
           x = y % x;            
           y = temp;        
       }
       // ๋ถ„์ž,๋ถ„๋ชจ๋ฅผ ์ตœ๋Œ€๊ณต์•ฝ์ˆ˜๋กœ ๋‚˜๋ˆ ์ฃผ๋ฉด => ๊ธฐ์•ฝ๋ถ„์ˆ˜
        int x1 = a/y;
        int y1 = b/y;
        
        //์†Œ์ธ์ˆ˜๋ถ„ํ•ด
        int i = 2;
        while ( y1 != 1){            
            if ( y1 % i == 0) {                
                y1 = y1 / i;                
                if (!ans.contains(i)){                    
                    ans.add(i);                
                }            
            }            
            else {                
                i ++;            
            }        
        }
        
        // ์†Œ์ธ์ˆ˜๋ถ„ํ•ด๊ฒฐ๊ณผ๊ฐ€ 2 ๋˜๋Š” 5 
        for (int n : ans ){
            if (n == 2 || n == 5){
                answer = 1;
            }else {
                answer = 2;
                break;
            }
        }
        // 

        if ( b == 1 || a%b == 0){
            answer = 1;
        }
        
        
        return answer;
    }
}