1 条题解

  • 1
    @ 2024-8-27 19:11:40

    这道题看到的很快会想到使用循环来做,的确,循环来做非常简单,但这次我们来看一下用递归怎么去做这道题目。

    int f(int n){
    	if(n<=0)
    		return 0;
    	return f(n-1)+n;
    }
    

    函数f返回的是1+...+n的答案,答案的计算方式是先去计算1+....+n-1,依次递进,一直到n<1的时候到达递进出口,然后回归。最终得到答案。

    主函数代码:

    int main(){
    	int n;
    	cin>>n;
    	cout<<f(n);
    	return 0;
    }
    

    信息

    ID
    912
    时间
    1000ms
    内存
    128MiB
    难度
    7
    标签
    递交数
    14
    已通过
    11
    上传者