Проверяли ли вы свой код, используя пример ввода и вывода примера:
Sample Input
1 10
100 200
201 210
900 1000
Sample Output
1 10 20
100 200 125
201 210 89
900 1000 174
Единственные незначительные проблемы, которые я вижу:
while (scanf("%lld %lld",&p,&q) !=EOF)
вероятно должно быть:
while (scanf("%lld %lld", &p, &q) == 2)
и
printf("%lld %lld %lld \r\n",p,q,max_cycle_length);
вероятно должно быть:
printf("%lld %lld %lld\n", p, q, max_cycle_length);