Advertisement
Derga

Untitled

Feb 7th, 2024
34
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.44 KB | None | 0 0
  1. #include <assert.h>
  2. #include <iostream>
  3. #include <vector>
  4.  
  5. using namespace std;
  6.  
  7. int main() {
  8. int all_cards_count;
  9. cin >> all_cards_count;
  10. int64_t sum = 0;
  11. int64_t squares_sum = 0;
  12. int64_t cubes_sum = 0;
  13. for (int64_t i = 1; i <= all_cards_count; ++i) {
  14. sum += i;
  15. squares_sum += i * i;
  16. cubes_sum += i * i * i;
  17. }
  18.  
  19. int64_t sum_hh, squares_hh, cubes_hh; // _hh - he has
  20. cin >> sum_hh >> squares_hh >> cubes_hh;
  21.  
  22. int64_t x, y, z;
  23. //x + y + z = sum - sum_hh;
  24. for (x = 1; x <= (sum - sum_hh); x++) {
  25. for (y = x + 1; y <= (sum - sum_hh - x) / 2; y++) {
  26. z = sum - sum_hh - x - y;
  27. if (z <= y || 50'000 < z) continue;
  28.  
  29. if (squares_hh + x * x + y * y + z * z == squares_sum &&
  30. cubes_hh + x * x * x + y * y * y + z * z * z == cubes_sum) {
  31. cout << x << ' ' << y << ' ' << z;
  32. return 0;
  33. }
  34. }
  35. }
  36.  
  37. assert(false);
  38. }
  39.  
  40. /*
  41. x + y + z = 10;
  42. x^2 + y^2 + z^2 = 30
  43. x^3 + y^3 + z^3 = 100;
  44.  
  45. (x + y + z) * (x + y + z) =
  46. x^2 + xy + xz + xy + y^2 + yz + xz + yz + z^2 =
  47. x^2 + y^2 + z^2 + 2xy + 2xz + 2yz == 100
  48. 2xy + 2xz + 2yz = 70
  49. xy + xz + yz = 35
  50.  
  51. (x^2 + xy + xz + xy + y^2 + yz + xz + yz + z^2)(x + y + z) =
  52. x^3 + x^2y + x^2z + x^2y + xy^2 + xyz + x^2z + xyz + xz^2 + x^2y + xy^2 +xyz +
  53. xy^2 +y^3 + y^2z+ yzx + y^2z + yz^2 + x^2z + xyz + xz^2 +xyz +y^2z+yz^2 +xz^2 + yz^2 + z^3=
  54.  
  55. xyz + xyz + xyz + yzx + xyz + xyz +=
  56.  
  57. x^3 + y^3 + z^3 + 3x^2y + 3x^2z + 3y^2x + 3y^2z + 3z^2x + 3z^2y + 6xyz = 1000
  58. 3x^2y + 3x^2z + 3y^2x + 3y^2z + 3z^2x + 3z^2y + 6xyz = 900
  59. x*(xy) + x(xz) + y*(xy) +z*(yz) + z(xz) +z(zy) + 2xyz = 300
  60. xy(x + y) + xz(x + z) + zy(z + y) + 2xyz = 300
  61.  
  62. (x^2 + y^2 + z^2)(x + y + z) = 300
  63. x^3 + x^2*y + x^2*z + y^2 * x + y^3 + y^2 * z + z^2 * x + z^2 * y + z^3 = 300
  64.  
  65. x^2y + x^2z + y^2x + y^2z + z^2x + z^2y + 2xyz = 300
  66. x^2y + x^2z + y^2x + y^2z + z^2x + z^2y = 200
  67. 2xyz = 100;
  68. xyz = 50;
  69.  
  70. 1 + x + y + z = 10
  71. 1 + x^2 + y^2 + z^2 = 30
  72. 1 + x^3 + y^3 + z^3 = 100
  73.  
  74. (1 + x + y + z) * (1 + x + y + z) = 100
  75. 1 + x + y + z + x + x^2 + xy + xz + y + xy + y^2 + yz + z + xz + zy + z^2 = 100
  76. x^2 + y^2 + z^2 + 1 = 30
  77. 2x + 2y + 2z + 2xy + 2xz + 2yz = 70
  78. x + y + z + xy + xz + yz = 35
  79. x + y + z = 9
  80. xy + xz + yz = 26
  81.  
  82. 1 * 1 = 10 * 10
  83. 1 * 1 - 2 - (2 * 1 - 1) == (10 * 10 - 30) / 2 - (1 - 1);
  84.  
  85.  
  86.  
  87. */
  88.  
  89.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement