acm数论-数学公式
1. i从1到n-1的 i*(i-1)的和=n*(n-1)*(2*n-4)/3
sum =∑i(i-1)=∑i^2-∑i 这里是1到n-1
=n*(n-1)*(2*n-1)/6 - n*(n-1)/2
=n*(n-1)*(2*n-4)/3
2.∑i^2 ==n*(n+1)*(2*n+1)/6 这里是1到n
3.1/2+1/4+1/8+1/16+1/32+1/64+1/128+1/256+...+1/(2^n)<1 该式子成立
证明:设m=1/2+1/4+1/8+1/16+1/32+1/64+1/128+1/256+...+1/(2^n)
2m=1+1/2+1/4+1/8+1/16+1/32+1/64+1/128+...+1/(2^(n+1))
两个式子相减得:m=1-1/(2^n)<1
4.判断n是否是2的幂 if ( n & ( n - 1 )) printf("NO\n");
#include<cstdio>
int main()
{
int n;
while ( scanf("%d",&n) != EOF )
{
if ( n & ( n - 1 )) printf("NO\n"); //这个方式判断n是否是2的幂,还是蛮巧妙的。
else printf("YES\n");
}
return 0;
}

浙公网安备 33010602011771号