码迷,mamicode.com
首页 > 其他好文 > 详细

快读(快速读入)有多快(未完结)

时间:2019-07-30 12:43:16      阅读:1260      评论:0      收藏:0      [点我收藏+]

标签:快速   超时   class   算法   cloc   can   oop   math   for   

在一些题目中,有的程序会被卡常(数),就是说,程序虽然渐进复杂度,(通俗来讲,算法的时间复杂度)可以接受,但因为算法本身的时间常数过大,导致程序在一些算法竞赛中超时。这是,快读就显得尤为重要了。

当然,如果程序算法本身就不高效,快读就更加重要了,可以让一些

快速读入可以让大家的输入更快

#include <cstdio>
#include <ctime>
#include <iostream>
#define LOOP 3
#define DATA 10000
inline int Readi(){
int x;
int fh=1;
char a=getchar();
while(‘0‘>a || ‘9‘<a){
if(a==‘-‘) fh=-1;
a=getchar();
}
while(‘0‘<=a && a<=‘9‘){
x=x*10+a-‘0‘;
a=getchar();
}
return x*fh;
}
void TryPrint(){
FILE* fp=fopen("in.txt","w");
for(int i=1;i<=DATA;++i)fprintf(fp,"%d ",i);
fclose(fp);
}
void TryReadi(){
int t;for(int i=1;i<=DATA;++i){
t=Readi();
}
}
void TryReads(){
int t;for(int i=1;i<=DATA;++i)scanf("%d",&t);
}
void TryReadc(){
int t;for(int i=1;i<=DATA;++i){
std::cin>>t;
}
}
int main(){
for(int k=1;k<=LOOP;++k){
TryPrint();clock_t p=clock();
freopen("in.txt","r",stdin);
TryReadi();clock_t i=clock();
TryReads();clock_t s=clock();
freopen("out.txt","a+",stdout);
printf("快读:%u\n",i-c);
printf("scanf输入:%u\n",s-c);
}
return 0;
}

快读(快速读入)有多快(未完结)

标签:快速   超时   class   算法   cloc   can   oop   math   for   

原文地址:https://www.cnblogs.com/cdsidi/p/11269232.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!