求1+2+3+...+n

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

思路:n&&Sum来判断n==0.

 1 class Solution {
 2 public:
 3     int Sum_Solution(int n) {
 4         int r=0;
 5         Sum(n,r);
 6         return r;
 7     }
 8 private:
 9     int Sum(int n,int& r){
10         n&&Sum(n-1,r);
11         r+=n;
12         return r;
13     }
14 };

 

posted @ 2015-09-07 22:21  鸭子船长  阅读(161)  评论(0)    收藏  举报