不科学

P1090 [NOIP2004 提高组] 合并果子 / [USACO06NOV] Fence Repair G

可能是洛谷用的是Linux的评测机吧
by zyg20010121 @ 2016-08-18 10:15:51


很科学!
by cjycjy @ 2016-08-18 12:53:03


科学的不要不要的
by cjycjy @ 2016-08-18 12:53:43


没有什么不科学的。你的读入优化写错了。如果ch=getchar()之后ch==‘ ’或ch=='\n'或者ch=='\r'之类的,那么就不会执行for,in就等于零了。这样比如你读完第一个数,在读第二个数的时候,第二个数肯定就是0了
by Mys_C_K @ 2016-10-25 12:13:06


读入优化一般写成这样: ```cpp int get_num() { int num=0;char ch; bool flag=false; while((ch=getchar())==' '||ch=='\n'||ch=='\r');//把非数字读掉 if(ch=='-') flag=true; else num=ch-'0'; while(isdigit(ch=getchar())) num=num*10+ch-'0'; return (flag?-1:1)*num; } ```
by Mys_C_K @ 2016-10-25 12:16:26


而且本来读入优化和scanf差不多的效率(大多数情况下),而且这个题ai<=20000,用读入优化反而会慢一些。
by Mys_C_K @ 2016-10-25 12:27:15


![](https://cdn.luogu.com.cn/upload/pic/10.png)
by 王中立 @ 2017-01-15 11:13:01


|