문제 링크입니다: https://www.acmicpc.net/problem/3036
3036번: 링
문제 상근이는 창고에서 링 N개를 발견했다. 상근이는 각각의 링이 앞에 있는 링과 뒤에 있는 링과 접하도록 바닥에 내려놓았다. 상근이는 첫 번째 링을 돌리기 시작했고, 나머지 링도 같이 돌아간다는 사실을 발견했다. 나머지 링은 첫 번째 링 보다 빠르게 돌아가기도 했고, 느리게 돌아가기도 했다. 이렇게 링을 돌리다 보니 첫 번째 링을 한 바퀴 돌리면, 나머지 링은 몇 바퀴 도는지 궁금해졌다. 링의 반지름이 주어진다. 이때, 첫 번째 링을 한 바퀴 돌리면,
www.acmicpc.net
첫 번째 링 크기와 이후의 링 크기의 최대 공약수를 구하고 각각을 나눈 숫자를 출력하면 되는 문제였습니다.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#include <iostream> | |
#include <vector> | |
using namespace std; | |
int GCD(int a, int b) | |
{ | |
if (a % b == 0) | |
{ | |
return b; | |
} | |
return GCD(b, a % b); | |
} | |
int main(void) | |
{ | |
ios_base::sync_with_stdio(0); | |
cin.tie(0); | |
int N; | |
cin >> N; | |
vector<int> v(N); | |
for (int i = 0; i < N; i++) | |
{ | |
cin >> v[i]; | |
} | |
int a = v[0]; | |
for (int i = 1; i < N; i++) | |
{ | |
int gcd = GCD(a, v[i]); | |
cout << a / gcd << "/" << v[i] / gcd << "\n"; | |
} | |
return 0; | |
} |


개발환경:Visual Studio 2017
지적, 조언, 질문 환영입니다! 댓글 남겨주세요~
반응형
'알고리즘 > BOJ' 카테고리의 다른 글
백준 2012번 등수 매기기 (0) | 2019.10.22 |
---|---|
백준 2457번 공주님의 정원 (0) | 2019.10.22 |
백준 15736번 청기 백기 (0) | 2019.10.21 |
백준 1145번 적어도 대부분의 배수 (0) | 2019.10.21 |
백준 2501번 약수 구하기 (0) | 2019.10.21 |