fork download
  1. #include <stdio.h>
  2. void fab(int y, long long int z)
  3. {
  4. int w[z],s1 = -1;
  5. long long int q;
  6. int j, l = 0;;
  7. j = -1;
  8. w[0] = 0;
  9. w[1] = 1;
  10. if ((y == 0) || (y == 1)) {
  11. printf("%d\n", y);
  12. ++l;
  13. }
  14. if (l == 0) {
  15. for (q = 2; q < z; ++q) {
  16. w[q] = ((w[q-1] + w[q-2]) % z) ;
  17. if (w[q] == y) {
  18. printf("%lld\n", q);
  19. ++l;
  20. }
  21. }
  22. }
  23. if (l == 0)
  24. printf("%d\n", j);
  25. }
  26. int main() {
  27. int n,s1 = -1;
  28. scanf("%d", &n);
  29. int i,a,l = 0;
  30. long long int b,j;
  31. for (i = 0; i < n; ++i) {
  32. scanf("%d", &a);
  33. scanf("%lld", &b);
  34. if (b < 11) {
  35. printf("%d\n", s1);
  36. continue;
  37. }
  38. else {
  39. for (j = 2; j <= (long long int)sqrt((double)b); ++j) {
  40. if (b % j == 0) {
  41. printf("%d\n", s1);
  42. ++l;
  43. }
  44. }
  45. }
  46. if (l == 0 && b >= 11) {
  47. a = a % b;
  48. fab(a,b);
  49. }
  50. }
  51. return 0;
  52. }
Success #stdin #stdout 0s 2252KB
stdin
4
0 11
16 19
18 19
4 19
stdout
0
14
16
-1