Advertisement
Guest User

Untitled

a guest
Nov 4th, 2020
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.03 KB | None | 0 0
  1. #include <bits/stdc++.h>
  2. #define mod 1000000007;
  3. #define ll long long
  4. using namespace std;
  5.  
  6. ll help(ll a, ll b,ll ** arr)
  7. {
  8. if (a < 0 || b < 0)
  9. {
  10. return 0;
  11. }
  12. if (a == 0 && b == 0)
  13. {
  14. return 1;
  15. }
  16. if(arr[a][b] != -1){
  17. return arr[a][b];
  18. }
  19. else
  20. return arr[a][b] = help(a - 2, b - 1,arr) + help(a - 1, b - 2,arr);
  21. }
  22.  
  23. int main()
  24. {
  25. int t;
  26. cin >> t;
  27. ll flag = 0;
  28. ll a = 0, b = 0;
  29. vector<pair<ll, ll>>p (t);
  30.  
  31. ll index = 0;
  32. while (t)
  33. {
  34. cin >> a >> b;
  35. p[index].first = a;
  36. p[index].second = b;
  37. index++;
  38. t--;
  39. }
  40. cout << p[0].first <<p[1].first <<" ";
  41. for (ll k = 0; k < p.size(); k++)
  42. {
  43. a = p[k].first;
  44. b = p[k].second;
  45. ll ** arr = new ll*[a+1];
  46. for(ll i = 0; i < a+1; i++){
  47. arr[i] = new ll[b+1];
  48. }
  49. for (ll i = 0; i < a+1; i++)
  50. {
  51. for (ll j = 0; j < b+1; j++)
  52. {
  53. arr[i][j] = -1;
  54. }
  55.  
  56. }
  57. flag = help(a, b,arr);
  58. free(arr);
  59. if(flag){
  60. cout << "YES" << endl;
  61. }
  62. else{
  63. cout << "NO" << endl;
  64. }
  65. }
  66.  
  67. return 0;
  68. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement