比「讀入優化」更優的讀入方式

2021-07-30 14:32:34 字數 769 閱讀 6176

序:

相信很多oier在讀取大量資料的時候普遍採取讀入優化的方式讀入(**如下,基本類似):

inline

void read()//無符號型

//return input;

return ;

}

通過其他部落格我們發現比這樣更快的是fread,可惜不會用…

經過尋找,在知乎上找到了比讀入優化更快的方法。

測試表明比讀入優化快10%。

**如下:

char buffer[maxn],*s,*t; 

inline

char get_char()

return *s++;

}int get_int()

對比讀入優化讀入一千萬個的無符號型int型整數(迴圈10次)。

結果如下:

5.778000 0.577800(傳統)

5.078000 0.507800(新)

如何看待在oi/acm賽事廣為使用的快速讀入整數?

自此整理結束。

箜瑟_qi 2017.04.15 17:21

比「讀入優化」更優的讀入方式

序 相信很多oier在讀取大量資料的時候普遍採取讀入優化的方式讀入 如下,基本類似 inline void read 無符號型 return input return 通過其他部落格我們發現比這樣更快的是fread,可惜不會用 經過尋找,在知乎上找到了比讀入優化更快的方法。測試表明比讀入優化快10 ...

真的讀入優化與假的讀入優化

一直以來,我都是這樣寫讀入優化的。inline char nc inline void read int x 然後有道題死活過不去,把讀入優化改成scanf就過了。這才發現,我一直都寫的是假的!讀入優化!真正的讀入優化要這樣寫!inline char nc inline void read int ...

讀入讀出優化

有些題目追求高效能 比如說 nlogn 這個時候根據情況使用線段樹 樹狀陣列 記憶化搜尋或者搜尋剪枝很重要,但是不要忘記快讀 一般來說scanf和printf的速度已經很令人滿意了,雖說比不上pascal裡面的read 在讀入大量資料的時,比如10 7個int型的整數,scanf也顯得力不從心 快讀...