#25392: putchar 才是王道


allllllan123456 (God of Computer Science)

學校 : 國立臺灣大學
編號 : 13732
來源 : [140.109.20.138]
最後登入時間 :
2021-07-08 17:41:52
e446. 排列生成 | From: [223.138.229.14] | 發表日期 : 2021-05-18 21:02

注意到一般的 printf, cout 成本是很高的,如果一個字元就動用一次這種等級的輸出一定會爆掉;

不妨試試先把等最後的字串合成好再一次輸出 (這邊也許用 puts 效率就會不同);

也或許可以每個字元都用 putchar 輸出,效率又會更高?

等待好心人幫忙實測這幾種不同輸出方式的效率囉。

 
#25394: Re:putchar 才是王道


fire5386 (becaidorz)

學校 : 國立清華大學
編號 : 115822
來源 : [140.114.217.8]
最後登入時間 :
2024-04-13 22:06:23
e446. 排列生成 | From: [61.230.1.56] | 發表日期 : 2021-05-18 21:37


直接cout(有加ios::sync_with_stdio(false), cin.tie(NULL), cout.tie(NULL)) :AC (8s, 348KB)

把結果存在陣列最後在puts輸出:AC (0.2s, 19.4MB)

 
ZeroJudge Forum