|
|
От: |
Кодт
|
|
| Дата: | 01.12.03 11:08 | ||
| Оценка: | |||
int gcd(int a, int b)
{
a = abs(a);
b = abs(b);
while(a > 1 && b > 1) // можно while(a != 0 && b != 0) -- но это неоптимально
if(a > b)
a -= b;
else
b -= a;
if(a == 1 || b == 1)
return 1;
else
return a + b; // одно из них == 0
}
Перекуём баги на фичи!