求1+2+3+...+n
来源:互联网 发布:淘宝猜你喜欢位置在哪 编辑:程序博客网 时间:2024/06/03 12:27
题目描述:求1+2+3+...+n,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
思路一:
*利用逻辑与的短路特性实现递归终止。
*当n==0时,(n>0)&&((res+=Sum_Solution(n-1))>0)只执行前面的判断,为false,然后直接返回0;
*当n>0时,执行res+=Sum_Solution(n-1),实现递归计算Sum_Solution(n)。
public class Solution { public int Sum_Solution(int n) { int res = n; boolean ans = (n > 0) && ((res += Sum_Solution(n - 1)) > 0); return res; }}
思路二:
利用pow函数
public class Solution { public int Sum_Solution(int n) { return ((int) Math.pow(n,2) + n) >> 1; }}
利用异常退出递归
public class Solution { public int Sum_Solution(int n) { return sum(n); } private int sum(int n) { try { int i = 1 % n; return n + sum(n - 1); } catch (Exception e) { return 0; } }}
阅读全文
1 0
- 1、求n!;2、求1!+2!+3!+......+n!之和
- 求1+2+3+....n
- 求1+2+3+...+n
- 求1+2+3+...+n
- 求1+2+3+...+n
- 求1+2+3+...+n
- 求1+2+3+。。。+N
- 求1+2+3+...+n
- 求1+2+3+...+n
- 求1+2+3+...+n
- 求1+2+3+...+n
- 求1+2+3+...+n
- 求1+2+3+...+n
- 求1+2+3+...+n
- 求1!+2!+3!+......+n!
- 求1+2+3+...+n
- 求1+2+3+...+n
- 求1+2+3+...+n
- [BZOJ]2759 一个动态树好题 LCT + 数学 + 好题[真]
- 7-39 字符串转换成十进制整数(15 分)
- HTML5离线存储原理
- 本地连接到solrcloud集群环境进行源码测试
- 大型网站架构 图片服务器分离
- 求1+2+3+...+n
- vga的各种概念
- PySpark处理数据并图表分析
- jsp往controller传值
- 策略模式+工厂模式优化if...else if...else if结构
- 前端:js转义符的妙用:解决 以0开头的字符串传值 以及 传值过程中会出现乱码的问题
- 一个yield使用例子
- Visual Studio-第三方库调用方法简介
- Linux:vim basic use