题目描述
求 1+2+…+n,要求不能使用乘除法、for、while、if、else、switch、case 等关键字及条件判断语句 (A?B:C)。
数据范围
1≤n≤1000。
样例
输入:10 输出:55
方法一:递归 O(n)
由于题目要求不能用乘除法、for、while、if、else、switch、case 等关键字及条件判断语句 (A?B:C) 。所以这道题我们用递归的方法来做,虽然此题代码很短,但为了更直观的理解,我还是用图解形式进行讲解,假设 n = 5
:
class Solution { public: int getSum(int n) { if (!n) return 0; return n + getSum(n - 1); } };
欢迎大家在评论区交流~