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

来源:互联网 发布:google picasa mac 编辑:程序博客网 时间:2024/06/11 21:14

题目描述

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

算法描述:
1. 利用c++的类的构造函数,构造函数会在对象创建的时候会执行,但不适合java
2. 创建一个二维数组bool array[n][n + 1],然后得出整个数组的大小,最终通过移位除2来求出和,不适合java,因为java没有sizeof函数。
3. 利用逻辑符号的短路性,实现递归求解

代码如下:

    public static int Sum_Solution(int n) {        int ans = n;        boolean w = ans != 0 && (ans += Sum_Solution(n - 1)) != 0;        return ans;    }
0 0
原创粉丝点击