用cin cout都TLE 用c语言的就过了....为啥啊

P3865 【模板】ST 表

因为scanf的读入速度快呀,cout的打印速度快
by Abernethy @ 2023-10-03 18:53:24


如果您认为您的代码时间复杂度正确但是 TLE,可以尝试使用快速读入: ```cpp 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-48;ch=getchar();} return x*f; } ``` 函数返回值为读入的第一个整数。 来自[原题题干](https://www.luogu.com.cn/problem/P3865)。 如果仍旧不行,建议您贴出代码,以便其他人帮助您。
by YMnRb @ 2023-10-03 18:58:51


题目数据量过大scanf快于cin
by wing_yhc @ 2023-10-03 19:01:42


好的好的 谢谢啦
by RingTouSou @ 2023-10-04 17:32:04


理论上关闭流同步的 ```cin``` 与 ```cout``` 和 ```scanf``` 与 ```printf``` 的速度应该是差不多的。 如果慢很多,可以看一看换行是不是用了 ```endl```,如果是的话改成输出换行符,因为 ```endl``` 自带一个刷新缓冲区的操作,而这个操作是很慢的。
by Kedit2007 @ 2023-10-08 09:11:50


|