社区讨论
快写竟然比cout关同步流慢这么多??!!
灌水区参与者 7已保存回复 18
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 18 条
- 当前快照
- 1 份
- 快照标识符
- @lo13gtv0
- 此快照首次捕获于
- 2023/10/22 14:35 2 年前
- 此快照最后确认于
- 2023/11/02 14:05 2 年前
上午模拟赛,被输出卡了好久,结果把快写换成
cout,就从8秒跑进半秒!我的快写:
CPP#include <bits/stdc++.h>
#define gc getchar
#define pc putchar
template <typename T>
void write(T x) {
if (x < 0) pc('-'), x = -x;
static int st[40]; int tp = 0;
do {st[tp++] = x % 10; x /= 10;} while (x);
while (tp) pc(st[--tp] + '0');
}
int main() {
freopen("test.out", "w", stdout);
for (int i = 1; i <= 800000; i++) write(rand()), pc('\n');
return 0;
}
等效的
CPPcout关同步流:#include <bits/stdc++.h>
int main() {
freopen("test.out", "w", stdout);
std::ios::sync_with_stdio(0); std::cout.tie(0);
for (int i = 1; i <= 800000; i++) std::cout << rand() << '\n';
return 0;
}
是因为我的快写写的太丑了吗???
回复
共 18 条回复,欢迎继续交流。
正在加载回复...