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

题目描述

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

题解

思路:运用&&短路原理,当a&&b中a为假,后面就不计算,一次作为递归结束(精妙)

public int Sum_Solution(int n) {
    int sum = n;
    boolean t = (sum!=0) && ((sum += Sum_Solution(n - 1)))!=0;
    return sum;
}

 

posted @ 2019-03-06 15:56  sky-walker  阅读(145)  评论(0编辑  收藏  举报