华电北风吹
天津大学认知计算与应用重点实验室
日期:2015/10/8
题目描述
求1+2+3+…+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
解析:没啥难度,就是用普通的递归就可以,只不过普通的需要判断n==0的时候不再递归,这里利用一下&&,当&&前面的逻辑值为假则不再执行&&后面的代码。
class Solution {
public:
int Sum_Solution(int n)
{
int result;
(n > 0) && (result = n + Sum_Solution(n - 1));
(n == 0) && (result = 0);
return result;
}
};