• 个人简介

    17届入学菜鸡刘为华


    人人都可以用的快读模板

    char B[1<<15],*S,*T;
    #define getchar() (S==T&&(T=(S=B)+fread(B,1,1<<15,stdin),S==T)?EOF:*S++)
    void read() {}
    template<typename T1,typename ...T2>void read(T1 &num,T2&... rest)
    {
    	num=0;
    	bool f=0;
    	char ch;
    	while(!isdigit(ch=getchar()))
    		f=ch=='-';
    	do
    		num=num*10+ch-'0';
    	while(isdigit(ch=getchar()));
    	if(f)
    		num=-num;
    	read(rest...);
    }
    

    怎么用?和传统快读有什么区别? 1.使用fread,速度更快 2.不需要一个变量使用一次read

    int a,b,c,d,e,f,g,...;
    read(a),read(b),read(c),.... //传统快读
    read(a,b,c,d,e,f,g,....)//新式快读
    
  • 最近活动