Advertisement
Guest User

Untitled

a guest
Nov 2nd, 2015
114
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 2.31 KB | None | 0 0
  1. /*******************************
  2. *  Bismillahir Rahmanir Rahim
  3. *  Harunur Rashid
  4. ********************************
  5.  
  6. ************Template Starts Here***********/
  7.  
  8. #include<bits/stdc++.h>
  9.  
  10. using namespace std;
  11.  
  12. #define endl     "\n"
  13. #define eps      1e-9
  14. #define sf       scanf
  15. #define xx       first
  16. #define yy       second
  17. #define pf       printf
  18. #define ppb      pop_back
  19. #define sqr(x)   ((x)*(x))
  20. #define mp       make_pair
  21. #define pb       push_back
  22. #define pi       acos(-1.0)
  23. #define mod      1000000007
  24. #define pr(a)    cout<<a<<"\n"
  25. #define sz(x)    ((int)x.size())
  26. #define all(a)   a.begin(),a.end()
  27. #define mem(a,b) memset(a,b,sizeof(a))
  28. #define lcm(a,b) (abs(a)/gcd(a,b))*abs(b)
  29.  
  30. typedef long long int          lld;
  31. typedef unsigned long long int llu;
  32. typedef vector<int>            vi;
  33. typedef pair<int,int>          pii;
  34.  
  35. template<class T>
  36. T mod_f(T num)
  37. {
  38.     if(num>=0) return num%mod;
  39.     else       return ((num%mod)+mod)%mod;
  40. }
  41.  
  42. template<class T>
  43. T fast_pow(T b,T p)
  44. {
  45.     if(p==0)
  46.         return 1;
  47.     if(p%2)
  48.     {
  49.         T x=mod_f(mod_f(b)*mod_f(fast_pow(b,p-1)));
  50.         return x;
  51.     }
  52.     else
  53.     {
  54.         T x=mod_f(fast_pow(b,p/2));
  55.         x=mod_f(mod_f(x)*mod_f(x));
  56.         return x;
  57.     }
  58. }
  59.  
  60. template<class T>
  61. T gcd(T a,T b)
  62. {
  63.     a=abs(a);
  64.     b=abs(b);
  65.     while(b)
  66.     {
  67.         T r=a%b;
  68.         a=b;
  69.         b=r;
  70.     }
  71.     return a;
  72. }
  73.  
  74. /*/ 4 direction ....
  75.  
  76. int dx[]= {+0,+1,+0,-1};
  77. int dy[]= {+1,+0,-1,+0};
  78.  
  79. // 8 direction ....
  80.  
  81. int dx[]= {+0,+1,+1,+1,+0,-1,-1,-1};
  82. int dy[]= {+1,+1,+0,-1,-1,-1,+0,+1};
  83.  
  84. // Knight direction...
  85.  
  86. int dx[]= {+1,-1,+2,-2,+2,-2,+1,-1};
  87. int dy[]= {+2,+2,+1,+1,-1,-1,-2,-2};
  88. */
  89.  
  90. /***********Template Ends Here***********/
  91.  
  92. double p,q,r,s,t,u;
  93.  
  94. double equation(double x)
  95. {
  96.     return p*exp(-x)+q*sin(x)+r*cos(x)+s*tan(x)+t*x*x+u;
  97. }
  98.  
  99. int main()
  100. {
  101.     double low,mid,high;
  102.     while(~scanf("%lf%lf%lf%lf%lf%lf",&p,&q,&r,&s,&t,&u))
  103.     {
  104.         low=0.0;
  105.         high=1.0;
  106.         for(int i=0;i<50;i++) /// getting WA using while(abs(low-high)>eps)
  107.         {
  108.             mid=(low+high)/2;
  109.             if(equation(mid)<0) high=mid;
  110.             else low=mid;
  111.         }
  112.         if(fabs(equation(mid))>eps) printf("No solution\n");
  113.         else printf("%.4lf\n",mid);
  114.     }
  115.     return 0;
  116. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement