#1905: 公式解


qwer12343 (風中細雨)


  1. #include<iostream>   
  2. #include<cmath>   
  3.   
  4. using namespace std;   
  5. int main(){   
  6.     long long int p, q, r, s;   
  7.     while(cin>>p>>q>>r){   
  8.     s=sqrt((p+q+r)*(p+q+r)-4*p*r);   
  9.     cout<<s<<endl;   
  10.     }   
  11.     return 0;   
  12. }  
#8701: Re:公式解


Leroi (醫官也會寫程式)


  1. #include   
  2. #include   
  3.   
  4. using namespace std;   
  5. int main(){   
  6.     long long int p, q, r, s;   
  7.     while(cin>>p>>q>>r){   
  8.     s=sqrt((p+q+r)*(p+q+r)-4*p*r);   
  9.     cout<
  10.     }   
  11.     return 0;   
  12. }  

直接po講公式是哪招?
提供一個思考方向:

如上圖
xy=2a+2c+2b-ABCD面積=a+b+c-d
可知AD長為2c/y,AB長為2a/x
ABCD面積=a+b+c+d=4ac/xy
帶入xy=a+b+c-d,移項
→[(a+b+c)+d][(a+b+c)-d]=4ac
→(a+b+c)2-d2=4ac
→d=[(a+b+c)2-4ac]1/2