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

【思路】由于题目好多运算符不能用,我们只有想到使用递归的方法,但是递归一般要判断递归结束条件,但题目又不让使用if语句,因此我们可以使用&&运算符,也就是这句话:res && (res+=Sum_Solution(n-1)),也就是res为零时,与运算符的右边将不执行,因此递归结束,返回最后的res即可得到总和,非常棒的思路!

class Solution {
public:
int Sum_Solution(int n) {
int res = n;
res && (res += Sum_Solution(n-));
return res;
}
};

最新文章

  1. angular前端开发环境
  2. java学习第15天(Linklist Vector)
  3. 第二篇:SOUI源码的获取及编译
  4. ACM 数独
  5. Linux 系统裁剪
  6. JS 学习笔记--9---变量-作用域-内存相关
  7. 微软发布屏蔽Win10升级的官方办法
  8. SICP 练习 1.3
  9. jquery实现ajax提交form表单的方法总结
  10. 二叉树3种递归和非递归遍历(Java)
  11. JS前端正则表达式学习笔记(转)
  12. 字符串查找算法总结(暴力匹配、KMP 算法、Boyer-Moore 算法和 Sunday 算法)
  13. AES算法,DES算法,RSA算法JAVA实现
  14. oracle实现like多关键字查询
  15. mongodb遇到的问题
  16. Rabbit的机器人-二分答案
  17. Exception 02 : java.lang.ClassNotFoundException: Could not load requested class : com.mysql.jdbc.Driver
  18. win10上跑 sqlserver 2000应用程序
  19. 什么是maven,jar包的查找过程?
  20. javabean为什么要实现序列化?

热门文章

  1. Pdo 绑定参数方法 通用更新语句
  2. axios 如何取消已发送的请求?
  3. Spring的AOP开发(基于ApsectJ的注解)
  4. 055、Java中使用for循环输出乘法口诀表
  5. java学习之IO流(学习之旅,一)
  6. php中常用的加密函数
  7. redis改配置
  8. java时间差
  9. Gym - 101158C Distribution Center
  10. C语言里面和时间有关的函数