Witam. Robię zadanie Gra Euklidesa ze Spoj.com i skończyłem je. Chyba działa, pewnie można to zrobić w prostszy sposób ponieważ spoj pokazuje, że program wykonuje się zbyt wolno o 0,01s :D Jak można go przyspieszyć ?
#include <iostream>
using namespace std;
int main()
{
int ile;
int I_gracz,II_gracz;
int mniejsza;
int dodatek1 = 0, dodatek2 = 0;
cin>>ile;
for(int i=0; i<ile; i++)
{
cin>>I_gracz>>II_gracz;
while((I_gracz - dodatek1) != (II_gracz - dodatek2))
{
if (I_gracz<II_gracz)
{
mniejsza = I_gracz;
I_gracz +=mniejsza;
dodatek1 = mniejsza;
II_gracz -=mniejsza;
}
else if(I_gracz>II_gracz)
{
mniejsza=II_gracz;
II_gracz +=mniejsza;
dodatek2 = mniejsza;
I_gracz -=mniejsza;
}
}
if((I_gracz - dodatek1)==(II_gracz-dodatek2))
cout<<(I_gracz - dodatek1)+(II_gracz-dodatek2)<<endl;
}
return 0;
}