加速輸入輸出

        我們寫程式如果用一般的輸入輸出,常常會遇到一個問題,就是TLE,所以要加速。
        最一般的就是這個 :
                std::cin.tie(0), std::cout.tie(0), std::ios::sync_with_stdio(0);
        這是將<iostream>跟<stdio.h>這個標頭檔解綁,使其達到加速的效果。
        和這個 :
                int main(int argv, char** argc) + return 0;
        這只有稍微加速而已。
        還有這個 :
scanf("%...", &x), printf("%...", x);
        這個是直接使用c的函數達到加速的效果,不過當你使用<iostream>加上這個的時候
std::cin.tie(0), std::cout.tie(0), ios::std::sync_with_stdio(0);
        scanf("%...", &x), printf("%...", x);就不能用了,因為解綁了。
        再來就是可以加速又可以減記憶體的方法,因為只有這三個有些題目過不了。
getchar, putchar----->unlocked
        這個可以加速非常多,通常只要用這個,大部分的題目都可以過。
fread, fwrite----->unlocked
        但是ZJ不能用fwrite,所以在裡面最快的輸入輸出,就是這兩個。
fread_unlocked, putchar_unlocked
        在ZJ中所有只需I/O優化的題目,用這兩個一定過。
        這是讀取字串和數字的方法 :

        而這是輸出的方法 :                                         
19
介紹到這邊,如果你喜歡,請按個訂閱,然後訂閱我的youtube頻道。
掰~~~~~

這個網誌中的熱門文章

基礎題庫答案 zerojudge