求快读模板
  • 板块灌水区
  • 楼主zhangbo1000
  • 当前回复0
  • 已保存回复0
  • 发布时间2024/7/8 13:11
  • 上次更新2024/7/8 13:43:57
查看原帖
求快读模板
760291
zhangbo1000楼主2024/7/8 13:11

考虑一种较为常见的极端情况:输入只含 2322^{32} 以内的非负整数,并且只使用空格,\n 和 \r 分隔,这中情况下有比以下写法更快的吗:

char gtc(){
	static char tmp[100000],*p=0,*top=0;
	if(p==top){top=(p=tmp)+fread(tmp,1,100000,stdin);}
	return *p++;
}
void read(unsigned int& x){
	char c;
	while((c=gtc())<'0');
	x=c^'0';
	while((c=gtc())>='0')x=(x<<1)+(x<<3)+(c^'0');
}
2024/7/8 13:11
加载中...