将题给函数翻译成代码即可
考察递归入门,基本函数的实现/调用(如绝对值、根号、最值)
一个热知识是 \pi 通常用 acos(-1)
计算,即 \pi=\arccos(-1)
参考代码:
#include <bits/stdc++.h>
using namespace std;
typedef double db;
db pi = acos(-1.0), x;
db f(db x)
{
if (x >= 0.0 && x <= 5.0)
{
return sqrt(x) + pi;
}
else if (x > 5)
{
return min(f(x - 1) + 1.0 / 3 * f(x - 2), 0.5 * f(x - 4));
}
else
{
return 2 * abs(f(x + 3) * f(x + 4));
}
}
signed main()
{
scanf("%lf", &x);
printf("%lf", f(x));
return 0;
}