题解 | #封闭图形的面积#
封闭图形的面积
http://www.nowcoder.com/practice/e8423459fd554a3984cc1d7b6059c0c9
- delta大于0
- 记住求根公式。
- 最后写出积分式然后反解积分式带入就行。
#include<bits/stdc++.h> using namespace std; //就是数学题推导 int main(){ int T; cin>>T; while(T--){ int A,B,C; cin>>A>>B>>C; int a = B*B, b = 2*B*C-2*A, c = C*C; int delta = b*b - 4*a*c; if(delta<=0){ //若交点小于两个,直接返回0 cout<<"0"<<endl; }else{ double x1 = (-b + sqrt(delta))/(2*a); double x2 = (-b - sqrt(delta))/(2*a); double y1 = B*x1 + C; double y2 = B*x2 + C; // 易知y1大于y2(B > 0, x1 > 0, x2 > 0) double res = (y1*y1-y2*y2)/(2*B) + (y2-y1)*C/B + (y2*y2*y2-y1*y1*y1)/(6*A); cout<<res<<endl; } } return 0; }
大厂笔试题题解 文章被收录于专栏
主要是公司笔试题得一些总结