leetcode【剑指Offer】64.求1+2+3+...+n - Go语言中文社区

leetcode【剑指Offer】64.求1+2+3+...+n


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

解题思路:1+2+…+n = 1+2+…+n-1 n,把这个算式写成代码并考虑n=1,n-1等于0时的情况即可,由于不能用判断语句,所以使用&&左边为false不再计算右边的方式,当n=0时返回的还是自身

class Solution {
    public int sumNums(int n) {
        int sum = n;
        boolean tmp = (n>0) && ((sum += sumNums(n-1))>0);
        return sum;
    }
}

运行结果

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/wangzhaoyoung/article/details/108553121
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2021-06-13 19:41:11
  • 阅读 ( 738 )
  • 分类:算法

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢