超时原因没加上
ios::sync_with_stdio(false);
cin.tie(NULL);
我真傻,真的,我单知道语言不可能限制我的分数,我单认为这是什么玄学加速,加速不可能靠这些东西,这辈子都不可能,我不信邪。今天我敲这一题直30分超时反复检查,百思不得其解,看别人代码不可能啊他这效率也没比我高多少啊,各处一问,大家说糟了,怕是遭了c++了,一看原来是那两家伙没带上 holy sh*t
ios::sync_with_stdio(false);
因为C++为了兼容c,cin和cout要与stdio同步,中间会有一个缓冲,所以导致cin,cout语句输入输出缓慢,把它置为false就可以接触同步,以前一直没问题可能是这次cin的字符串太长问题显露出来了
副作用设置为false后不能在混用c和c++的输入输出了
cin.tie(NULL);
在默认的情况下cin绑定的是cout,每次执行 << 操作符的时候都要调用flush,这样会增加IO负担。可以通过tie(0)(0表示NULL)来解除cin与cout的绑定,进一步加快执行效率。
下图为实际测试
从上到下区别只有2条代码
最上面ios::sync_with_stdio(false);cin.tie(NULL);
中间ios::sync_with_stdio(false);
下面没加
恶心坏了
// 损坏的RAID5.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include
#include
#include
#include
作者:-Z-G-D-
cin
c+
FALSE
with
sync
C++
raid
IOS
null