劍指Offer(Python多種思路實現):求1+2+···+n
題目:64題
求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等關鍵字及條件判斷語句(A?B:C)。
解題思路一:python方法
def Sum_Solution(self, n):
return n and (n+self.Sum_Solution(n-1))
解題思路二:
class Solution:
def Sum_Solution(self, n):
# write code here
return self.sum(n)
def sum0(self,n):
return 0
def sum(self,n):
func={False:self.sum0,True:self.sum}
return n+func[not not n](n-1)