64 求1+2+...+n
题目
求1+2+...+n,要求不能使用乘除法,for,while,if,else,switch,case等关键词及条件判断语句(?:)。
C++ 题解
这里使用了运算符&&的短路特性。
int Sum_Solution5(int n)
{
int sum = n;
bool flag = (n > 0) && ((sum += Sum_Solution5(n - 1)) > 0);//第一个条件(n > 0)相当于终止条件
return sum;
}
python 题解
# -*- coding:utf-8 -*-
class Solution:
def Sum_Solution(self, n):
# write code here
return n and n + self.Sum_Solution(n-1)