Advertisement
tumaryui

Untitled

Mar 29th, 2020
610
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.07 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. #define int long long
  3. #define pb push_back
  4. #define one puts("1")
  5. #define zero puts("0")
  6. using namespace std;
  7. string p;
  8. int k;
  9. int md[4];
  10.  
  11. int mod(string num, int a)
  12. {
  13. int res = 0;
  14.  
  15.  
  16. for (int i = 0; i < num.length(); i++)
  17. res = (res*10 + (int)num[i] - '0') %a;
  18.  
  19. return res;
  20. }
  21. main() {
  22. int t;
  23. cin >> t;
  24. while(t--) {
  25. cin >> p >> k;
  26. md[0] = mod(p, 5);
  27. md[1] = mod(p, 13);
  28. md[2] = mod(p, 29);
  29. md[3] = mod(p, 53);
  30. if(k == 1) {
  31. if(p == "5")
  32. zero;
  33. else if(md[0] == 1 || md[0] == 4)
  34. one;
  35. else {
  36. p.back()--;
  37. cout << p << endl;
  38. }
  39. } else if (k == 3){
  40. if(p == "13")
  41. zero;
  42. else if(md[1] == 1 or md[1] == 4 or md[1] == 9 or md[1] == 3 or md[1] == 12 or md[1] == 10)
  43. one;
  44. else {
  45. p.back()--;
  46. cout << p << endl;
  47. }
  48. }
  49. else if(k == 5) {
  50. if(p == "29")
  51. zero;
  52. else if(md[2] == 1 or md[2] == 4 or md[2] == 7 or md[2] == 6 or md[2] == 5 or md[2] == 9 or md[2] == 13 or md[2] == 16 or md[2] == 20 or md[2] == 22 or md[2] == 23 or md[2] == 24 or md[2] == 25 or md[2] == 28)
  53. one;
  54. else {
  55. p.back()--;
  56. cout << p << endl;
  57. }
  58. }
  59. else if (k == 7) {
  60. if(p == "2") {
  61. puts("1");
  62. continue;
  63. }
  64. if(p == "53")
  65. zero;
  66. else if(md[3] == 2 || md[3] == 24 || md[3] == 1 or md[3] == 4 or md[3] == 6 or md[3] == 7 or md[3] == 9 or md[3] == 10 or md[3] == 11 or md[3] == 13 or md[3] == 15 or md[3] == 16 or md[3] == 17 or md[3] == 25 or md[3] == 24 or md[3] == 29 or md[3] == 28 or md[3] == 38 or md[3] == 36 or md[3] == 37 or md[3] == 43 or md[3] == 46 or md[3] == 43 or md[3] == 40 or md[3] == 44 or md[3] == 49 or md[3] == 47 or md[3] == 42 or md[3] == 52)
  67. one;
  68. else {
  69. p.back()--;
  70. cout << p << endl;
  71.  
  72. } }
  73. }
  74.  
  75. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement