讀入優化和輸出優化

2021-08-27 21:25:45 字數 1374 閱讀 9031

前兩天做牛客的題  才知道有這麼個玩意。。。。。

果然還是太菜  大佬們打比賽是去切題  我是去認識新名詞。。。。。。

題目也很直白  說了 

讀入檔案較大,請使用讀入優化,本機除錯時請使用檔案輸入輸出
而且題目  也給出了優化寫法 

可以直接用  非常良心

inline int read() 

while(c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar();

return x * f;

}用法:

int a = read(), b = read();

cout << a + b;

自己到網上看了看    大佬的講解部落格傳送門

這個東西  還是有一點用的

根據大佬的測試每50萬組資料讀入優化要比scanf快0.1秒(100ms)

那麼一百萬組資料 就快了0.2秒了  相當不錯

下面給出**模板

#include#include#include#includeusing namespace std;

void read(int &x)

while(s>='0'&&s<='9')

x*=f;

return ;

}void print(int x)

if(x>9) print(x/10);//這裡是個遞迴 所以雖然是按照從數字末尾到開頭的順序處理

putchar(x%10+'0'); //但是輸出的時候會倒著輸出 也就是正序

return ;

}int main()

return 0;

}

a+b問題

#include #include #include #include #include #include using namespace std;

int read()

return out*fh;

}void write(int x)

int num = 0; char c[15];

while(x) c[++num] = (x%10)+48, x /= 10;

while(num) putchar(c[num--]);

putchar(' ');

}int main()

讀入優化 輸出優化

注意了注意了注意了,重要的事情說3遍,這個東西是騙分神器,騙分神器,騙分神器!眾所周知 scanf比cin快得多,printf比cout快得多,如果你不知道就 就現在知道了 那有沒有更快的呢?當然。請看 好吧,這就是讀入優化的效果,在資料很恐怖的情況下能比scanf多過1 5個點 比如說這種 都說了...

讀入輸出優化

1 void read int x 表示引用,也就是說x是乙個實參,在函式中改變了x的值就意味著在外面x的值也會被改變212 while s 0 s 9 是字元 一旦不是字元就意味著輸入結束了 1317 x f 改變正負 18 1 void print int x 這裡不用實參28 if x 9 只...

讀入優化與輸出優化

c 是一門神奇的學科。在讀入 輸出時,我們經常用到 scanf cin printf cout 但是,在演算法競賽中,我們奉行乙個原則 效率第一!於是,便產生了各種各樣的奇技淫巧。下面的讀入與輸出優化就是其中之一。讀入優化 c 自帶的 scanf 已經很快了,但是100w的資料要0.6 0.8s,很...