: → Killercat: cin/cout有一套加速的trick
: → Killercat: https://tinyurl.com/y55xhery 可以参考这篇 刷榜能用
说到洗榜我兴趣就来了 XDDDD
这篇的意思是说 cout 只要把 sync_with_stdio 关掉就可以变快
std::ios_base::sync_with_stdio(false);
然而这和哪套 function 哪个语言无关,它是底层 Standard I/O 的 buffer 行为,
所以 C 的 printf 家族也有一样的招式:
setvbuf(stdout, NULL, _IOFBF, 0);
_IOFBF 的意思是 fully buffered I/O
而默认值是对 terminal 或 pipe 是 line buffered,
对 file 是 block (full) buffered,
对 stderr 则是 unbuffered (就算没有换行也立即印出来),
大家可以参考 setvbuf 的 man page 就有清楚说明了
结论:现在 printf 和 cout 平手了