[백준] 2436번 : 공약수 - C#

강재원·2022년 10월 25일
0

[코딩테스트] C#

목록 보기
146/200



https://www.acmicpc.net/problem/2436

using System;

class Program
{
    static void Main() {
        string[] s=Console.ReadLine().Split(' ');
        int a=int.Parse(s[0]);
        int b=int.Parse(s[1]);
        int num=b/a;
        int f=1;
        int l=1;
        int min=1000000000;
        for(int i=1;i<Math.Sqrt(num);i++){
            int c=0;
            int j=0;
            if(num%i==0){
                j=num/i;
                for(int k=2;k<=i;k++){
                    if(i%k==0 && j%k==0){
                        c=1;
                        break;
                    }
                }
                if(c==0){
                    if(i+j<=min){
                        f=i;
                        l=j;
                        min=i+j;
                    }
                }
            }
        }
       Console.WriteLine("{0} {1}",f*a,l*a);
    }
}
profile
개념정리 & 문법 정리 & 알고리즘 공부

0개의 댓글