# PBinfo #2771 – Covorul – Rezolvare C++

Sursa: Codul lui Andrei
Limbaj: C++
Autor rezolvare: andrei

## Enunț

Cerința
Mama vrea să acopere cu covoare o cameră cu lungimea de n metri și lățimea de m metri. Ea are la dispoziție oricâte covoare în formă de pătrat, de orice dimensiune, număr natural și respectă următoarele reguli:


fiecare covor plasat are laturile paralele cu laturile camerei;
covoarele așezate nu se suprapun;
de fiecare dată se folosește cel mai mare covor care poate fi ales în acel moment;
de fiecare dată covorul ales se plasează în așa fel încât zona neacoperită încă să fie un dreptunghi.

Știind dimensiunile camerei să se determine care este dimensiunea maximă a unui covor folosit și numărul total de covoare folosite.

Date de intrare
Programul citește de la tastatură numerele n și m, reprezentând dimensiunile camerei.

Date de ieșire
Programul va afișa pe ecran numerele L și N reprezentând în ordine dimensiunea maximă a unui covor folosit și numărul total de covoare folosite.

Restricții și precizări

1 ≤ n,m ≤ 1000000000
dimensiunile covoarelor sunt numere naturale nenule

Exemplul 1
Intrare

10 3
Ieșire

3 6
Explicație
Camera are forma următoare:



Se folosesc 3 covoare de latură 3 și 3 covoare de latură 1. Dimensiunea maximă este 3. O modalitate de așezare a covoarelor este:



Exemplul 2
Intrare

1 100
Ieșire

1 100
Explicație
Se folosesc 100 covoare de latură 1. Dimensiunea maximă este 1.

## Cod sursă C++

```cpp
#include <iostream>
using namespace std;
unsigned long long n, m, rez;
int main() {
    cin >> n >> m;
    cout << min(n, m) << " ";
    if (n == m) {
        cout << 1;
        return 0;
    } while (n > 1 || m > 1) {
        if (n > m) {
            rez = rez + n / m;
            n = n - m * (n / m);
        } else {
            rez = rez + m / n;
            m = m - n * (m / n);
        }
    } cout << rez;
    return 0;
}
```

## Resurse

- [Pagina originală](https://codulluiandrei.ro/rezolvari/pbinfo/2771)
- [Sursa C++](https://codulluiandrei.ro/rezolvari/pbinfo/2771/cod.cpp)
- [Sursa pe GitHub](https://raw.githubusercontent.com/codulluiandrei/pbinfo/main/pbinfo-2771/main.cpp)
- [Cursuri de informatică pentru BAC](https://codulluiandrei.ro/academia/info-curs/pachet-cpp/)
