在这里存一下我的快速输入输出优化

以及写题模板

这里的是$getchar$优化和$putchar$优化,$fread$和$fwrite$暂时咕咕咕

fread已补

快速输入

这里$define$了一个$I\_int$,改读入的数据类型的话直接在$define$那里改就好

#define I_int int
inline I_int read() {I_int x = 0 , f = 1 ; char c = getchar() ;while( c < '0' || c > '9' ) { if( c == '-' ) f = -1 ; c = getchar() ; } while( c >= '0' && c <= '9' ) { x = x * 10 + c - '0' ; c = getchar() ; } return x * f ;
} #undef I_int

快速输出

同上

#define I_int int
char F[ 200 ] ;
inline void write( I_int x ) {I_int tmp = x > 0 ? x : -x ;if( x < 0 ) putchar( '-' ) ;int cnt = 0 ;while( tmp > 0 ) {F[ cnt ++ ] = tmp % 10 + '0' ;tmp /= 10 ;}while( cnt > 0 ) putchar( F[ -- cnt ] ) ;
}
#undef I_int

整个的io优化板子

封装到了一个$namespace$里面,写题的时候可以收起来看着会比较舒服QAQ

namespace io {#define in(a) a=read()#define out(a) write(a)#define outn(a) out(a),putchar('\n')#define I_int int inline I_int read() {I_int x = 0 , f = 1 ; char c = getchar() ;while( c < '0' || c > '9' ) { if( c == '-' ) f = -1 ; c = getchar() ; } while( c >= '0' && c <= '9' ) { x = x * 10 + c - '0' ; c = getchar() ; } return x * f ;} char F[ 200 ] ;inline void write( I_int x ) {if( x == 0 ) { putchar( '0' ) ; return ; }I_int tmp = x > 0 ? x : -x ;if( x < 0 ) putchar( '-' ) ;int cnt = 0 ;while( tmp > 0 ) {F[ cnt ++ ] = tmp % 10 + '0' ;tmp /= 10 ;}while( cnt > 0 ) putchar( F[ -- cnt ] ) ;}#undef I_int}
using namespace io ;

fread读入优化

就是把原来那个$read$的$getchar$换成了$fread$,这样会更快

但是一个不好的地方是必须读文件流。不能用cmd

char buf[1<<21], *p1 = buf, *p2 = buf;
inline char gc() { if(p1 != p2) return *p1++; p1 = buf; p2 = p1 + fread(buf, 1, 1 << 21, stdin); return p1 == p2 ? EOF : *p1++; } #define G gc #ifndef ONLINE_JUDGE #undef G #define G getchar #endif template<class I> inline void read(I &x) { x = 0; I f = 1; char c = G(); while(c < '0' || c > '9') {if(c == '-') f = -1; c = G(); } while(c >= '0' && c <= '9') {x = x * 10 + c - '0'; c = G(); } x *= f; }

写题模板

#include <bits/stdc++.h>
using namespace std;namespace io {
char buf[1<<21], *p1 = buf, *p2 = buf;
inline char gc() {if(p1 != p2) return *p1++;p1 = buf;p2 = p1 + fread(buf, 1, 1 << 21, stdin);return p1 == p2 ? EOF : *p1++;
}
#define G gc#ifndef ONLINE_JUDGE
#undef G
#define G getchar
#endiftemplate<class I>
inline void read(I &x) {x = 0; I f = 1; char c = G();while(c < '0' || c > '9') {if(c == '-') f = -1; c = G(); }while(c >= '0' && c <= '9') {x = x * 10 + c - '0'; c = G(); }x *= f;
}template<class I>
inline void write(I x) {if(x == 0) {putchar('0'); return;}I tmp = x > 0 ? x : -x;if(x < 0) putchar('-');int cnt = 0;while(tmp > 0) {buf[cnt++] = tmp % 10 + '0';tmp /= 10;}while(cnt > 0) putchar(buf[--cnt]);
}#define in(x) read(x)
#define outn(x) write(x), putchar('\n')
#define out(x) write(x), putchar(' ')} using namespace io;#define ll long long
const int N = 100010;int main() {}

转载于:https://www.cnblogs.com/henry-1202/p/9914043.html

C++快速输入输出优化相关推荐

  1. 15年第六届蓝桥杯第九题_(矩阵快速幂优化的动态规划)

    垒骰子 赌圣atm晚年迷恋上了垒骰子,就是把骰子一个垒在另一个上边,不能歪歪扭扭,要垒成方柱体. 经过长期观察,atm 发现了稳定骰子的奥秘:有些数字的面贴着会互相排斥! 我们先来规范一下骰子:1 的 ...

  2. 模板 - 快速输入输出

    非负整数的快速输入输出 inline int read() {int x=0;char c;do {c=getchar();} while(c<'0'||c>'9');do {x=(x&l ...

  3. 蓝桥杯 - 垒骰子(动态规划+矩阵快速幂优化)

    垒骰子 赌圣atm晚年迷恋上了垒骰子,就是把骰子一个垒在另一个上边,不能歪歪扭扭,要垒成方柱体. 经过长期观察,atm 发现了稳定骰子的奥秘:有些数字的面贴着会互相排斥! 我们先来规范一下骰子:1 的 ...

  4. CF989E A Trance of Nightfall(概率+矩阵快速幂优化+倍增)

    CF传送门 洛谷传送门 [题目分析] 在zxy大佬的讲解下终于懂了这道题的做法了qwq... 首先根据题意,出发点不一定在特殊点上,但第一次操作后,之后所有的操作都是在特殊点上,所以先考虑从线上出发的 ...

  5. 【POJ - 3744】Scout YYF I(概率dp,矩阵快速幂优化dp)

    题干: 题目大意: 在一条不满地雷的路上(无限长),你现在的起点在1处.在N个点处布有地雷,1<=N<=10.地雷点的可能坐标范围:[1,100000000]. 每次前进p的概率前进一步, ...

  6. HDU 5863 cjj's string game ( 16年多校10 G 题、矩阵快速幂优化线性递推DP )

    题目链接 题意 : 有种不同的字符,每种字符有无限个,要求用这k种字符构造两个长度为n的字符串a和b,使得a串和b串的最长公共部分长度恰为m,问方案数 分析 : 直觉是DP 不过当时看到 n 很大.但 ...

  7. AtCoder abc256全题解(区间合并模板、矩阵快速幂优化dp、线段树……)

    文章目录 A B C-枚举 D-区间合并模板 E-图论建模,函数图的性质 题意 思路 代码 F-树状数组 题意 思路 代码 G-矩阵快速幂优化dp H-线段树 思路 实现 传送门 本文CSDN 本文j ...

  8. 2022年网站快速排名优化 方法是什么?

    目前,为了取得更好的宣传效果,必须合理运用各种网络营销手段,在网上进行宣传,扩大宣传范围,获得更多的流量. 在众多的互联网普及方式中,网站的普及是大多数人最喜欢的普及方式,如果能够利用搜索引擎优化技术 ...

  9. 谷歌seo快速排名优化方法?谷歌seo排名技巧

    本文主要分享关于谷歌seo排名如何快速提升的一些技巧. 本文由光算创作,有可能会被修改和剽窃,我们佛系对待这种行为吧. 谷歌seo快速排名优化方法?谷歌seo排名有什么技巧? 答案是:持续建设GPB外 ...

最新文章

  1. SpringBoot 【IDEA热部署+浏览器禁用缓存】迅速提升效率
  2. 72 Zabbix邮件告警
  3. 第一天课程:第一个python程序print say hello
  4. Springboot+MyBatis-plus+postgresSQL 的整合
  5. c语言字节强制对齐,C语言的那些小秘密之字节对齐
  6. KL散度的通俗易懂理解
  7. 电脑上怎么做pdf文件_怎么合并PDF文件?PDF合并软件哪个好?
  8. Docker 中的网络管理与集群构建
  9. 如何卸载CrossOver里的软件 ?快来看看吧
  10. rgss3a解包器_Rgss3a解包器下载
  11. 【WiFi】WiFi信道(2.4G、5G及5G DFS)及国家码和电话代码和时区对应表
  12. word 制作流程图
  13. 设计模式大作业绘图系统【六种设计模式+文档】
  14. ckeditor实战总结
  15. ThinkPhp6+Vue+ElementUI前后端分离在线教程
  16. Python 之 类 (Tom猫)
  17. 学习Vue3 第二十五章(TSX)
  18. ORACLE 如何获取uid
  19. Python函数注释格式
  20. Planting Trees Day 植树节 一起去种树

热门文章

  1. 并查集的一般操作 ③
  2. git fetch 命令
  3. spring in action小结4.1
  4. spring融合activitymq-all启动报错的解决办法
  5. go git 安装配置与使用 (windows 7 64bit)
  6. jboss启动之奇葩问题
  7. swift 函数.和匿名函数
  8. 在这个领域发一篇最有影响力的期刊,这是一个well qualified的phd学生应该做的
  9. 收到了7封拒信的观后感哈哈哈哈哈哈哈哈哈哈
  10. 我的linkedin profile