【模版】快速读入/输出

快速读入模版

template < class T > inline void read(T &x) {
    x = 0;
    char c = getchar();
    bool f = 0;
    while (!isdigit(c)) {
        f ^= c == ‘-‘;
        c = getchar();
    }
    while (isdigit(c)) {
        x = (x << 3) + (x << 1) + (c ^ 48);
        c = getchar();
    }
    if (f)
        x = ~x + 1;
}

快速输出模版

template < class T > inline void print(T x) {
    if (x < 0) {
        putchar(‘-‘);
        x = ~x + 1;
    }
    if (x > 9)
        print(x / 10);
    putchar(48 + x % 10);
}

原文地址:https://www.cnblogs.com/heartlesser/p/10170688.html

时间: 2024-10-11 07:52:13

【模版】快速读入/输出的相关文章

卡常神器——register 与 快速读入输出

快速读入模板 int read() { int s = 0, w = 1; char ch = getchar(); //getchar() 一次从键盘读入一个字符 while (ch <='0' || ch > '9') { if (ch == '-') w = -1; ch = getchar(); } while (ch >= '0' && ch <= '9') { s = s * 10 + ch - '0'; ch = getchar(); } return

快速读入输出模板

inline int read() { char ch = getchar(); int x = 0, f = 1; while(ch < '0' || ch > '9') { if(ch == '-') f = -1; ch = getchar(); } while('0' <= ch && ch <= '9') { x = x * 10 + ch - '0'; ch = getchar(); } return x * f; } inline void put(i

常用快速读入快速输出

此文为博主原创,转载时请通知博主,并把原文链接放在正文醒目位置. 简要介绍 众所周知,就运行速度而言,getchar()快于scanf快于cin,putchar()快于printf快于cout. 但getchar()和putchar()每次只能操作一个字符,使用起来比较麻烦. 于是就出现了快读.快速输出. 它们的原理都是把需要读入\输出的数字(本文只能用于处理整数)一位一位地输出,从而减少运行时间. 代码 1 #include<cstdio> 2 using namespace std; 3

[读入输出优化]4.15正确的打开方式

读入输出优化 大概是那种写了不一定有用,但是好歹算是个心理安慰的东西 考试题太难不知该从何下手 先写个读入输出优化压压惊 没啥好讲解的部分,getchar,putchar是最快的读入输出方式 剩下的背模版就行 提示:名字取个别那么常见的就行 /*代码部分*/ int read(){ int x,f=1; char ch; while (ch=getchar(),ch<48||ch>57) if (ch=='-') f=-f; x=ch-48; while (ch=getchar(),ch>

C++ 快速读入 模板

原创建时间:2018-03-23 19:40:02 比HK记者还快! C++ 快速读入.输出 在 C++ 上实现快速读入模板,这里是一个读取int 的示例. inline int Quick_Read(){ int s = 0,w = 1; char ch = getchar(); while (ch <= '0' || ch > '9'){ if (ch == '-') w = -1; ch = getchar(); } while (ch >= '0' && ch &

读入输出优化模板

因为是直接调用系统底层所以速度会很快... 1 long long read(){ 2 long long x=0,w=1; 3 char c=0; 4 for (c=getchar();c<'0'||c>'9';c=getchar()) {if (c=='-') w=-1;} 5 for (;c>='0'&&c<='9';c=getchar()) x=(x<<3)+(x<<1)+c-'0'; 6 return x*w; 7 } 读入 1 v

读入输出优化_C++

当我们考试时遇到大量的读入或者输出时,这些代码会耗费许多运行程序的时间,导致TL 本来 log2n 的算法因为读入被卡成线性的就太不划算了,所以我们这里要采用读入输出优化 getchar 和 putchar 是最快的读入输出方式,变量名尽量用一些不是很常用的,以免冲突 1 #include<cstdio> 2 #include<cstdlib> 3 #include<cstring> 4 #include<cmath> 5 #include<iostr

网络赛用MOD-含读入输出优化模板和几个常用函数

之前一场比赛被读入优化坑了,一怒之下写了MOD MOD说明: 加入读入和输出优化,加快了速度 输入输出本地运行添加颜色区分 加入了一些常用函数,随机数范围扩大至0~2^64-1 读入与输出优化实测结果: 与scanf相比 整数类型速度提高一倍左右 浮点型速度提高5~7倍 字符及字符串类型提高1/10 与printf相比 整数类型速度提高1/5~2倍(数字越少速度越快)左右 浮点型速度不变 字符及字符串类型提高1/10 下方贴代码 <span style="font-size:12px;&q

本地vbs调试快速显示输出

function setClipBoard(str) Set WshShell = CreateObject("WScript.Shell") Set oExec = WshShell.Exec("clip") Set oIn = oExec.stdIn oIn.WriteLine str oIn.Close Do While oExec.Status = 0 WScript.Sleep 100 Loop Set oIn = Nothing Set oExec =