UVa-10341-Solve It
AOAPC I: Beginning Algorithm Contests (Rujia Liu) :: Volume 4. Algorithm Design
// 10341 - Solve It #include <cstdio> #include <cmath> #define EPS 1e-7 // 精度要求苛刻... int p, q, r, s, t, u; double formula(double x) // 单调递减 { return p*exp(-x) + q*sin(x) + r*cos(x) + s*tan(x) + t*x*x + u; } int main(void) { while(scanf("%d%d%d%d%d%d",&p,&q,&r,&s,&t,&u) != EOF) { double a = 0, b = 1, m; if(formula(0)*formula(1) > 0) // 边界分析 printf("No solution\n"); else { while(b - a > EPS) { m = (a + b) / 2; if(formula(a)*formula(m) > 0) a = m; else b = m; } printf("%.4f\n", m); } } return 0; }