링크 : www.acmicpc.net/problem/3036
첫 번째 링과 각 원의 최대 공약수를 구해서 각각 나눈 값이 정답이다.
#include<iostream>
using namespace std;
int small = 0;
int gc(int a, int b) {
int ans = 0;
for (int i = 1; i <= small; i++) {
if (a % i == 0 && b % i == 0) ans = i;
}
return ans;
}
int main() {
ios::sync_with_stdio(NULL);
cin.tie(NULL);
int n = 0, arr[101], temp = 1, gcnum = 0;
cin >> n;
for (int i = 0; i < n; i++) cin >> arr[i];
while (temp < n) {
small = arr[0] > arr[temp] ? arr[temp] : arr[0];
gcnum = gc(arr[0], arr[temp]);
cout << arr[0] / gcnum << "/" << arr[temp] / gcnum << "\n";
temp++;
}
return 0;
}
'🖥️ CS > Baekjoon Algorithms' 카테고리의 다른 글
#9012번 괄호 (C++) (0) | 2020.11.05 |
---|---|
#11051번 이항 계수2 (C++) (0) | 2020.11.05 |
#2609번 최대공약수와 최대공배수 (C++) (0) | 2020.11.02 |
#1946번 신입 사원 (C++) (0) | 2020.11.01 |
#11399번 ATM (C++) (0) | 2020.10.30 |