-
SP18202 HG - HUGE GCD 题解
题目大意是求 $N$ 和 $M$ 的最大公因数,所以考虑将 $N$ 和 $M$ 质因数分解求出每个质因子,由于 $N$ 和 $M$ 都是很大很大的数字,所以采取对 $N$ 和 $M$ 的因子进行质因数分解。
-
简单的最大值 题解
gcd-lcm
-
Lamps 题解
Lamps
-
C++ 卡常技巧
常见误区
- 尽可能使用位运算,
<<1比*2快,>>1比/2快,用&1代替%2,用三次^代替swap,(x<<3)+(x<<1)代替x*10 - 尽可能把
i++变成++i,因为i++处理时会使用临时变量储存原先i的值 - 简单函数前使用
inline,或者干脆使用#define,因为函数调用会浪费时间 - 字符串较短时使用
putchar,较长时使用printf,但是如果要换行,一定要用puts - 数组尽量开奇数个(我也不知道什么原理)
- 使用
register优化循环变量 - 手写函数,比如
maxabsswap等,还有 STL if语句比三目运算符要慢,逗号运算符比分号运算符要快- 使用直接初始化
int maxn(-1)代替复制初始化int maxn=-1 std::pair常数大cin.tie(nullptr)没有用- 万能头,
using namespace std;很慢 std::vector常数巨大,不如链式前向星- 结构体封装慢
while比for快
- 尽可能使用位运算,
-
CF1384A Common Prefixes 题解
-
LGP6353 [COCI2007-2008#3] OKTALNI 题解
- 12
- 13
- •