Witam,
Ostatnio chciałem sobie porobić zadania bardziej "do pomyślenia", zrobiłem kilka i utknąłem na zadaniu "Dwuwymiarowe żabki". https://szkopul.edu.pl/problemset/problem/jhX8ocY37sY3QxmzJLwFrWC1/site/?key=statement
Oto kod:
#include <iostream>
struct Ab {
Ab()
{
}
Ab(unsigned long int a, unsigned long int b) : a(a), b(b)
{
}
public:
unsigned long int a;
unsigned long int b;
};
int main()
{
int n;
std::cin >> n;
Ab* dimensions = new Ab[n];
for (int i = 0; i < n; i++) {
unsigned long int a, b;
std::cin >> a >> b;
dimensions[i] = Ab(a, b);
}
for (int i = 0; i < n; i++) {
Ab dim = dimensions[i];
if (dim.a == dim.b) {
std::cout << 1 << std::endl;
continue;
}
int count = 1;
while (dim.a != dim.b) {
if (dim.a > dim.b) {
std::swap(dim.a, dim.b);
}
dim.b -= dim.a;
count++;
}
std::cout << count << std::endl;
}
return 0;
}
Zalicza mi wszystkie testy oprócz dwóch ostatnich:

Pojęcia nie mam czemu tak się dzieje - co powoduje problem w tym kodzie?