Euclid

Time limit: 1s Memory limit: 64MB Input: Output:

Cerință

Se dau aa si bb, Ionut vrea sa calculeze cmmdc(a,b)cmmdc(a,b). Pentru asta el va folosi urmatorul algoritm:

Cat timp a si b diferit de 0:
	daca a >= b:
		a-=b // face o operatie
	altfel:
		b-=a // face o operatie

Cate operatii face algoritmul?

Date de intrare

Pe prima linie se găsesc două numere întregi, aa și bb.

Date de ieșire

Pe prima linie se va găsi numaul de operatii.

Restricții și precizări

  • 1a,b10181 \leq a, b \leq 10^{18}

Exemplul 1

stdin

5 2

stdout

4

Explicație

Numere sunt:
(5,2)(5,2) -> (3,2)(3,2) -> (1,2)(1,2) -> (1,1)(1,1) -> (0,1)(0,1)
In total 4 operatii.

Exemplul 2

stdin

1234 645933214

stdout

523464

Log in or sign up to be able to send submissions!