声明:尊重他人劳动成果,转载请附带原文链接!学习交流,仅供参考!
题目
求 1+2+…+n ,要求不能使用乘除法、for、while、if、else、switch、case等关键字及条件判断语句(A?B:C)。
注意: 1 <= n <= 10000
示例1:
输入: n = 3
输出: 6
示例2:
输入: n = 9
输出: 45
思路分析
这里可以利用数学中的等差数列的求和公式计算出结果!
公式: Sn=n*(a1+an)/2
判断等于0,因为 1 <= n <= 10000
class Solution {
public int sumNums(int n) {
if (n == 0) {
return 0;
}
return n * (1 + n) / 2;
}
}