할껀하고놀자

[백준] 14490번 백대열 본문

[IT]/백준

[백준] 14490번 백대열

working_hard 2019. 6. 10. 15:40
728x90

c++ 문자열 처리방법중 하나 터득하였습니다.

최대공약수 구하는 방법 터득하였습니다.

int gcd(int a,int b){

   if(a%b==0){return b;}

   return gcd(b,a%b);

}

#include<iostream>
#include<string>
using namespace std;

int gcd(int a, int b) {
	if (a%b == 0) {
		return b;
	}
	return gcd(b, a%b);
}

int main() {
	string s;
	cin >> s;
	int a=0, b=0, digit = 1;
	bool flag = true;
	for (int i = s.length()-1; i >=0; i--) {
		if (s[i] == ':') {
			digit = 1;
			flag = false;
		}
		else {
			if (flag) {
				b += (s[i] - '0')*digit;
				digit *= 10;
			}
			else {
				a += (s[i] - '0')*digit;
				digit *= 10;
			}
		}
	}
	int igcd = gcd(a, b);
	cout << a / igcd << ":" << b / igcd << endl;
	return 0;
}

'[IT] > 백준' 카테고리의 다른 글

[백준] 10773번 제로  (0) 2019.06.10
[백준] 2164번 카드2  (0) 2019.06.10
[백준] 1850번 최대공약수  (0) 2019.06.10
[백준] 4307번 개미  (0) 2019.06.10
[백준] 14914번 사과와 바나나 나눠주기  (0) 2019.06.10
Comments