其他分享
首页 > 其他分享> > 一些常用的常数优化

一些常用的常数优化

作者:互联网

常数,决定了复杂度一样的算法得到分数的高低。

一个101010倍常数?不得了!

常用的常数优化:

0:精致优化
通过精妙地控制循环的边界或者搜索剪枝。 最有效!

1:快读

基础版:

inline int read() {
    int x = 0, f = 1;
    char ch = getchar();
    while (ch < '0' || ch > '9') {if (ch == '-')f = -1; ch = getchar();}
    while (ch >= '0' && ch <= '9'){ x = x * 10 + ch - '0'; ch = getchar();}
    return x * f;
}

2:registerregisterregister优化

for (register int i = 1; i <= n; ++i)

3:inlineinlineinline优化

inline int calc() {

}

4:判断语句优化

5:赋值优化

6:类型优化

7:运算优化

8:写法优化

for (int i = 0; i < (1 << all); ++i) {//2^n枚举
	for (int j = 0; j < all; ++j) {
		if ( (i >> j) & 1) bas[j + 1] = 1;
	}
}

for (int i = all; i; i = (i - 1) & all) //枚举子集

标签:longlong,常用,ch,..,int,long,常数,优化
来源: https://blog.csdn.net/hanjinbo/article/details/87920541