输入输出加速
直接使用 c i n / c o u t cin / cout cin/cout 进行输入输出时会比较慢,数据量较大时会比较耗时。因此在输入输出数据量特别大时,很多题目需要用更快的输入输出方式。
方法 1
头文件加入 #include <cstdio>
,然后仅使用
s
c
a
n
f
scanf
scanf 、
p
r
i
n
t
f
printf
printf 进行输入输出。
方法 2
在 m a i n ( ) main() main() 函数的开始加入两行代码。这两行代码可以关闭输入输出流同步,解除 c i n cin cin 、 c o u t cout cout 绑定。
...
int main(){
ios::sync_with_stdio(false);
cin.tie(0);
...
}
然后仅使用
c
i
n
cin
cin 、
c
o
u
t
cout
cout 进行输入输出,且所有换行使用 '\n'
,不使用
e
n
d
l
endl
endl 即可。
如果再搭配上文件输入输出,则
m
a
i
n
(
)
main()
main() 函数的开始可以这样写:
...
int main(){
freopen("输入文件名", "r", stdin);
freopen("输出文件名", "w", stdout);
ios::sync_with_stdio(false);
cin.tie(0);
...
}
方法 3
使用 g e t c h a r ( ) getchar() getchar() 自行解析,俗称快读,时间效率与方法 2 2 2 类似,不展开说明。