[알고리즘문제풀기] 유한소수 판별하기

silver's avatar
Jan 14, 2026
[알고리즘문제풀기] 유한소수 판별하기

문제

내가 작성한 정답

class Solution { public int solution(int a, int b) { for(int i=Math.min(a,b); i>1; i--){ if(a%i==0 && b%i==0) { b/=i; break; } } while (b>1){ if(b%2==0) b /= 2; else if(b%5==0) b /= 5; else return 2; } return 1; } }

다른 사람들의 정답

class Solution { public int solution(int a, int b) { int answer = ((a*1000)%b == 0) ? 1 : 2; return answer; } } class Solution { public int solution(int a, int b) { b /= gcd(a, b); while (b % 2 == 0) b /= 2; while (b % 5 == 0) b /= 5; return b == 1 ? 1 : 2; } int gcd(int m, int n) { return m % n == 0 ? n : gcd(n, m % n); } }
Share article

silver