Max_Leb

Untitled

Jan 29th, 2022
55
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.70 KB | None | 0 0
  1. #include <iostream>
  2. #include <iomanip>
  3.  
  4.  
  5. double good(int a, int b, int c, int d, double mid){
  6. return a * mid * mid * mid + b * mid * mid + c * mid + d;
  7. }
  8.  
  9. double bin(int a, int b, int c, int d){
  10. double left = -1e9, right = 1e9, mid;
  11. while(left + 1e-5 < right){
  12. mid = (left + right) / 2;
  13. if (good(a, b, c, d, mid) <= 0)
  14. left = mid;
  15. else
  16. right = mid;
  17. }
  18. return (left + right) / 2;
  19. }
  20.  
  21.  
  22. int main (){
  23. int a, b, c, d;
  24. std::cin >> a >> b >> c >> d;
  25. if (a < 0){
  26. a = -a;
  27. b = -b;
  28. c = -c;
  29. d = -d;
  30. }
  31. std::cout << std::setprecision(10) << bin(a, b, c , d);
  32.  
  33.  
  34. return 0;
  35. }
Advertisement
Add Comment
Please, Sign In to add comment