알고리즘 C#
백준 1735번 분수 합 C#으로 문제 풀어보기
minsoungdev
2025. 10. 18. 11:45
안녕하세요 박민성입니다.
오늘은 백준 1735번 분수 합을 풀어 보겠습니다.

문제를 보면
입력은 첫째 줄과 둘째 줄에, 각 분수의 분자와 분모가 주어집니다.
2 7
3 5 가 주어지면
2/7과 7/5 이렇게 세트로 분수입니다.
출력은 두 분수를 더했을 때 그 분수의 기약 분수를 출력합니다.
저는 이 문제의 입력과 출력을 보고 처음에는
2 7
3 5 가 들어왔을 때
대각선으로 2랑 5랑 곱하고 7과 3을 곱해서 더하면 31이 나오고
분모끼리 곱하면 35 나와서 문제가 쉽다고 생각했습니다.
그래서

대충 이렇게 쓰고 제출을 하였습니다.
하지만 이것은 틀렸습니다. 왜냐하면 문제에서 답을 기약분수로 출력하라고 했는데
이 코드는 기약분수로 만드는 것이 없기 때문이죠
그래서 기약분수를 어떻게 만들어야 할까 생각을 좀 해보다가
분수에서 분모와 분자의 최대공약수를 구한 다음에 그걸 나누면 기약분수가 된다고 생각했습니다.

일단 최대공약수를 구하는 간단한 메서드를 작성했습니다.
그리고

분자와 분모를 num1과 num2에 나눠주고
Chleorhddirtn에 분자와 분모를 넣어주고 최대공약수를 a에 넣어줍니다.
마지막으로 분자와 분모에 a를 나눠주고 출력해 주면 끝입니다.

이것이 전체 코드입니다.
이렇게 백준에 제출하였더니

정답이었습니다.