Cerința
Un tort dreptunghiular de dimensiuni MxN
trebuie împărţit în porţii pătrate de aceeaşi mărime. Găsiţi numărul minim de porţii care se pot obţine şi dimensiunea L
a acestora. Atât dimensiunile dreptunghiului cât şi ale pătratelor în care se împarte sunt numere întregi.
Date de intrare
Fişierul de intrare tort.in
va conţine pe prima linie numerele M
şi N
separate printr-un spaţiu.
Date de ieșire
Fişierul de ieşire tort.out
va conţine pe o singură linie, două numere naturale separate printr-un spaţiu, primul fiind numărul minim de porţii, iar celălalt dimensiunea L
.
Restricții și precizări
1 ≤ M ≤ N ≤ 10000
Exemplu
tort.in
20 24
tort.out
30 4
#include <bits/stdc++.h> using namespace std; ifstream cin("tort.in"); ofstream cout("tort.out"); int cmmdc(int a, int b){ while(b){ int r = a % b; a = b; b = r; } return a; } int main(){ int n, m; cin >> n >> m; int prod = n * m; int cm = cmmdc(n, m); cout << prod / (cm * cm) << ' ' << cm; return 0; }