算法打卡九
链接:link
64.求1 + 2 + 3 + 4+…+n
这道题:可以说是诸神乱战,天神秀操作的题
本质上他是经典问题出新意,加了许多限制条件
class Solution { public: int sumNums(int n) { return n == 0 ? 0 : n +sumNums(n-1); //这道题,我用递归操作,三目运算符 } };
大神题解:
class Solution { public: int sumNums(int n) { return sizeof(bool[n][n+1])>>1;
};`//本质是首项 + 末项之和除以二。以内存为载体思考的还有另一个大神的神奇思路:
class Solution { #define fun(n) ((1+n)*n/2) public: int sumNums(int n) { return fun(n); }//宏定义.....有点钻漏洞的感觉........但是秀到了..... };
这几个代码都非常值得我们学习,思考,借鉴。(并且背诵hhh)xdm共勉