快读是否对常数可能会负优化?
  • 板块学术版
  • 楼主Leo2011
  • 当前回复10
  • 已保存回复10
  • 发布时间2025/7/18 18:34
  • 上次更新2025/7/19 09:12:33
查看原帖
快读是否对常数可能会负优化?
539066
Leo2011楼主2025/7/18 18:34

Rt,小 L 在做一本通上的题目时发现二分答案被卡 TLE 了,一直调不出来……

最后发现是把快读替换为 scanf 就可以了,能快 900 多毫秒。

如图所示,上面的记录为快读版本

但是我的快读是我几乎每道题都要用的板子里的,这个板子用了快一年了,基本上都要比 scanfprintf 快,而且没有出过一丁点差错。

所以有没有大佬可以解释一下,以及我这套板子还能不能接着用了……


附:快读函数如下:

template <typename T>

inline T read() {
	T sum = 0, fl = 1;
	char ch = getchar();
	for (; !isdigit(ch); ch = getchar())
		if (ch == '-') fl = -1;
	for (; isdigit(ch); ch = getchar()) sum = sum * 10 + ch - '0';
	return sum * fl;
}

就是对着OI-Wiki上改的(貌似是直接拷来用的,应该不算巨量 ctj 吧

数据范围中读入的大头是一个长最大为 50,00050,000 值域在 11,000,000,0001 \sim 1,000,000,000 之间的数组,其它的都可以忽略不计

2025/7/18 18:34
加载中...