读入优化与输出优化
2018-06-17 20:45:35来源:未知 阅读 ()
C++是一门神奇的学科。。。
在读入/输出时,我们经常用到:
scanf , cin , printf , cout
但是,在算法竞赛中,我们奉行一个原则:
效率第一!
于是,便产生了各种各样的奇技淫巧。。。
下面的读入与输出优化就是其中之一。
读入优化:
C++自带的 scanf 已经很快了,但是100W的数据要0.6~0.8s,很明显,还是慢了。
为什么?因为 scanf 带了许多厉害但是我们不需要的的特判。
于是,读入优化破壳而出:
inline int read(){ int date=0,w=1;char c=0; while(c<'0'||c>'9'){if(c=='-')w=-1;c=getchar();} while(c>='0'&&c<='9'){date=date*10+c-'0';c=getchar();} return date*w; }
调用时,只需要:
int x; x=read();
即可。
效率超级高!
输出优化:
有读入优化,就有输出优化:
inline void write(int x){ if(x<0){putchar('-');x=-x;} if(x>9)write(x/10); putchar(x%10+'0'); }
调用时,只要:
int x=10; write(x);
即可。
时间大幅降低!
总结:
C++中还有各种各样的奇技淫巧,比如什么:
inline , register
等。
好好利用它们,可以卡掉那些TLE的点,甚至逆转AC!
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
- 第七章 1.输入输出与模板 2020-04-04
- C++ 文件输入输出 2020-03-27
- 标准输入重定向到文件后,如何连续读入,如何判断标准输入流 2020-03-20
- 二值图像连通域标记算法优化 2020-03-11
- c++输入输出,保留几位小数 2020-02-23
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash