不用判断语句真的是有点难啊,主要是如果直接用n * (n + 1) / 2
会直接爆unsinged long long
,(n*(n+1))爆了
,出来高精度只想到了先除2
,但这不得不用判断语句.(还是太菜了)
class Solution {
public:
int getSum(int n) {
return(unsigned long long) (n % 2 == 0) ? (n / 2 * (n + 1)) : ( (n + 1) / 2 * n);
}
};