讨论 / cin&&cout的悲剧!
kuki 2013-08-17 16:14:00
点我顶贴 收藏 删除

/////////////////////////这是用cin&&cout的测试结果

状态: Unaccepted

测评机: Xeost[5]

得分: 70分

提交日期: 2010-8-14 0:50:00

有效耗时: 6498毫秒

测试结果1: 通过本测试点|有效耗时437ms

测试结果2: 通过本测试点|有效耗时1000ms

测试结果3: 选手程序运行超过时限

测试结果4: 通过本测试点|有效耗时1015ms

测试结果5: 通过本测试点|有效耗时1016ms

测试结果6: 选手程序运行超过时限

测试结果7: 通过本测试点|有效耗时1015ms

测试结果8: 通过本测试点|有效耗时1000ms

测试结果9: 选手程序运行超过时限

测试结果10: 通过本测试点|有效耗时1015ms

//////

//////

//////

/////////////////////这是改用scanf&&printf的测试结果

状态: Accepted

测评机: Xeond[6]

得分: 100分

提交日期: 2010-8-14 0:53:00

有效耗时: 1468毫秒

测试结果1: 通过本测试点|有效耗时93ms

测试结果2: 通过本测试点|有效耗时141ms

测试结果3: 通过本测试点|有效耗时156ms

测试结果4: 通过本测试点|有效耗时156ms

测试结果5: 通过本测试点|有效耗时141ms

测试结果6: 通过本测试点|有效耗时141ms

测试结果7: 通过本测试点|有效耗时156ms

测试结果8: 通过本测试点|有效耗时172ms

测试结果9: 通过本测试点|有效耗时156ms

测试结果10: 通过本测试点|有效耗时156ms

////远闻cin&&cout先对后者要慢,待业没想到会这么慢,害的

////我纠结了两个小时

#1 897357142@2010-08-13 19:46:00
回复 删除
测评机好像不一样啊

Xeost[5]

Xeost[6]

#2 renqing@2010-08-13 20:38:00
回复 删除
回复 沙发897357142 的帖子

配置相同,流比标准慢很多

#3 coldffire@2010-08-13 22:38:00
回复 删除
我也遇到过了·········输入数据<=200 000时,结果用iostream比stdio慢70%······
#4 imxys@2010-08-14 02:38:00
回复 删除
我记得有人测试fin,fout

scanf,printf+freopen

cin,cout+freopen

还有个我忘了,一共4种输入输出,

结果cin,cout+freopen 33s+

scanf 4.32s

fin 4.38s

大概是这样的。。。

#5 ply_py@2010-12-02 03:43:00
回复 删除
同吐槽...

不过据说关掉某些cin和cout的功能之后就和printf家族与scanf家族速度不相上下了,有时甚至更快。

不过还是得承认iostream家族的比printf与scanf家族的强了不少,后者不安全,对数据的检查也不够严格。

不过对于俺们OIer来说速度就是一切...

#6 107229HR@2012-12-12 00:59:00
回复 删除
回复 地板imxys 的帖子

ios::sync_with_stdio(false);

加上试试

#7 蔡旭昀@2013-02-17 23:05:00
回复 删除
回复 地基107229HR 的帖子

取消同步是吗?还是慢了些

#8 蔡旭昀@2013-02-17 23:09:00
回复 删除
对比一下吧

方法/平台/时间(秒) Linux gcc Windows mingw Windows VC2008

Scanf 2.010 3.704 3.425

Cin 6.380 64.003 19.208

cin取消同步 2.050 6.004 19.616

Fread 0.290 0.241 0.304

Read 0.290 0.398 不支持

mmap 0.250 不支持 不支持

Pascal read 2.160 4.668 \

#9 107229HR@2013-04-10 02:31:00
回复 删除
回复 地壳/地幔 蔡旭昀 的帖子

其实取消同步以后,你用cin读入char类型会很快,比scanf快

#10 蔡旭昀@2013-04-27 07:30:00
回复 删除
回复 地核107229HR 的帖子

嗯,了解

查看更多回复
提交回复