加个特判就最优解了?

代码:
#include <bits/stdc++.h>
using namespace std;
const double eps=0.211;
double a;
inline double f(double x){
return pow(x,a/x-x);
}
inlinen double jifen(double l,double r){
if(r-l<eps) return (f(r)+f(l))*(r-l)/2;
double mid=(l+r)/2;
return jifen(l,mid)+jifen(mid,r);
}
int main(){
cin>>a;
if(a<0) puts("orz");
else if(!a) cout<<1.99546;
else printf("%.5lf",jifen(0,14));
}