剑指offer求1+2+3+...+n

Posted asumi

tags:

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

题目链接:求1+2+3+...+n


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

 

题解:首先不能用乘除法,就不能用公式。不能用条件判断,我们就要想到递归。

但是递归的终止条件怎么办呢。。逻辑与&&即可判断是否递归到0了。

 

代码:

1 class Solution {
2 public:
3     int Sum_Solution(int n) {
4         int sum = n;
5         sum && (sum += Sum_Solution(sum-1));
6         
7         return sum;
8     }
9 };

 

以上是关于剑指offer求1+2+3+...+n的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode剑指 Offer 64. 求1+2+…+n(C++)

剑指offer--14.求1+2+3+...+n

求 1+2+3+...+n --剑指offer

剑指offer---求1+2+3.....+n

[剑指offer] 47. 求1+2+3+...+n

[剑指Offer] 47.求1+2+3+...+n