一本通1166 求f(x,n)

Posted jiangxingchen

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一本通1166 求f(x,n)相关的知识,希望对你有一定的参考价值。

【题目描述】

已知

技术图片

计算x=4.2n=1以及x=2.5n=15f的值。

【输入】

输入x和n。

【输出】

函数值,保留两位小数。

【输入样例】

4.2 10

【输出样例】

3.68


1.看见这种一个套着一个还带着诡异符号的,
基本上都是函数+循环(递归嘛)的套路。
话说这题一开始我没看明白,
从n怎么变到x+1的???
再看看,
好像是由n变到1,然后最后那个根号里面有个x;
让我们递归一下,写写代码。
2.这就是正解了
#include<iostream>
#include<cstdio>
#include<cmath>
using namespace std;
double gen(double x,double n);//声明一个double型的函数,最后保留两位输出。 
int main()
{
    double n,x;
    double result;
    cin>>x>>n;
    result=gen(x,n);
    printf("%.2lf
",result);
    return 0;
}
double gen(double x,double n)//定义一下这个“根”函数 
{
    if(n==1)
    return sqrt(1+x);
    else
    return sqrt(n+gen(x,n-1));//这时候就是递归最灵魂的操作,调用自己
}

3.该递归的就要递归,

   递归的题和一般的函数+循环有区别(其实也不大),

   基本上有以下特征:

   (1):一个函数套自己,比如f(f(x)),

               正常的循环题只有不同参数函数值之间的加法或乘法。

   (2):大部分的题,不用递归你做不出来...(或是不好做...)

   所以嘛,做题之前一定先想想要用什么算法或者结构什么的,

   不然代码打到一半不会打了太尴尬...
     


以上是关于一本通1166 求f(x,n)的主要内容,如果未能解决你的问题,请参考以下文章

[普通递推数列] 转自《信息学奥赛之数学一本通》

樱花(信息学奥赛一本通 1624)

「一本通 6.3 练习 1」X-factor Chain

「一本通 6.3 例 1」反素数 Antiprime

一本通 高手训练 1763 简单树 可持久化线段树 树链刨分 标记永久化

loj10164. 「一本通 5.3 例 2」数字游戏