求1+2+3+...+n

题目描述

求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。


示例

输入

5

输出

15


思路

这一题根据要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。所以我们为了在递归中做到及时跳出,我们使用了&&的短路原则,即当&&的前半部分发生错误时,后半部分的判断条件不会被调用,即打破递归(当n == 0时,&&条件判断为false)。


代码

#include "iostream"
#include "string"
#include "vector"
using namespace std;

int Sum_Solution(int n) {
    int ans = n;
    n && (ans += Sum_Solution(n-1));
    return ans;
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 本文首发于我的个人博客:尾尾部落 题目描述 求1+2+3+...+n,要求不能使用乘除法、for、while、if...
    繁著阅读 614评论 0 0
  • 题目描述: 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、cas...
    LdpcII阅读 729评论 0 0
  • 题目描述 求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case...
    Gxxx_xx阅读 9,386评论 1 1
  • 反复 (一) 冷夜企图抚平噩梦 月色朦胧 我告诉自己即将启程 却又浅浅睡下 一晚,远远不够 填满我的犹豫 和思索 ...
    未晓啊阅读 145评论 0 1
  • 浮生々阅读 233评论 0 1