读入优化 && 输出优化

qwq算是一个板子随笔吧

快读我在某大佬的博客中找到了更短的代码

但是这个写习惯了就改不了了qwq

其实是我不想改

废话好多

直接贴代码

 1 //读入优化
 2 inline int read(){
 3     char ch, c;
 4     int res;
 5     while (ch = getchar(), ch < ‘0‘ || ch > ‘9‘) c = ch;
 6     res = ch - 48;
 7     while (ch = getchar(), ch >= ‘0‘ && ch <= ‘9‘)
 8     res = (res << 3) + (res << 1) + ch - 48;
 9     if (c == ‘-‘) res = -res;
10     return res;
11 }
12 //输出优化
13 void write(int x){
14     if (x < 0) putchar(‘-‘), x = -x;
15     if (x > 9) write(x / 10);
16     putchar(x % 10 + ‘0‘);
17     return;
18 } 

然后在使用的时候

1 int main(){
2     int n;
3     n = read();
4     write(n);
5 }

注意别忘了头文件名

#include <cstdio>

不许说我大括号不换行差评

原文地址:https://www.cnblogs.com/aiyi2000/p/9419025.html

时间: 2024-08-07 23:23:15

读入优化 && 输出优化的相关文章

读入优化&amp;输出优化

读入优化:读入优化只是针对整数,由于getchar()读字符非常的快,所以采用getchar()来进行读入,下设输入的数为x 负数处理:用一个标志变量f,开始时为1,当读入了'-'时,f变为-1,最后x*=f即可 绝对值部分处理:getchar()每次只能读一位,所以每当读了一位s时,x*=10,为s留位置,由于s为字符,需要减去'0'才能转为整数即:x=x*10+s-'0' 关于细节: 很多时候有多余的空格或者其它的一些无关字符输入,处理时需要注意排除 代码: 1 void read(int

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

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

c++ 读入优化、输出优化模板

0. 在有些输入数据很多的变态题中,scanf会大大拖慢程序的时间,cin就更慢了,所以就出现了读入优化.其原理就是一个一个字符的读入,输出优化同理,主要使用getchar,putchar函数. 1. int型读入优化(long long的只要把x改成long long型即可): 1 #include<cctype> 2 inline int read() 3 { 4 int x=0,f=0; char ch=0; 5 while(!isdigit(ch)) {f|=ch=='-';ch=ge

【墙裂推荐】读入优化和输出优化

读入优化: 1 inline int read() 2 { 3 int X=0,w=1; char ch=0; 4 while(ch<'0' || ch>'9') {if(ch=='-') w=-1;ch=getchar();} 5 while(ch>='0' && ch<='9') X=(X<<3)+(X<<1)+ch-'0',ch=getchar(); 6 return X*w; 7 } 输出优化: 1 inline void write

读入输出优化模板

因为是直接调用系统底层所以速度会很快... 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

[读入输出优化]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++

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

常用读入\输出优化

本文主要讲述常用的2种读入优化方法. 输出优化很少使用,在此简单提一下:也就是把输出的东西先放进字符串,再一次性puts\printf出去.提升不大,不常用. 首先当然需要先知道,scanf/printf比cin/cout快不少. 读入优化: getchar 使用getchar一个一个读入字符,转化成数字.比scanf快一些. inline int read() { int f=1,x=0;//f是正负的标识 char ch; do { ch=getchar(); if(ch=='-') f=-

Android 项目Log日志输出优化

概述 Android开发过程中经常需要向控制台输出日志信息,有些人还在用Log.i(tag,msg)的形式或者system.out.println(msg)方式吗?本篇文章对日志信息输出进行优化,以达到快速定位输出日志位置及输出规范日志的效果.日志输出行展示调用输出日志信息在哪个文件的第几行,并且可以和点击跳转到对应位置的作用. 输出日志的一般形式 1.在项目中直接调用Log.i(tag,msg)或者println函数,这是初级开发者的做法,不便于后期维护与统一控制. 2.在项目中对输出操作进行