【C++】输入优化(快读)

2023-05-16

快速读入,简称快读,比cin()、printf()等都快

void类型的快读

#include <cctype>
//isdigit()在<cctype>头文件中,用于判断字符是否为阿拉伯数字(0-9).
inline void read(int &x){
	x=0; 
	char c=0; 
	int w=0;  
	while (!isdigit(c)) w=-1,c=getchar();  
	while (isdigit(c)) x=x*10+(c^48),c=getchar();  
	if(w) x=-x;  
}

int main() {
	read(a);
	read(b);
	return 0;
}

int类型的快读

#include <cctype>

inline int read(){
	int s=0,w=1;
	char c=getchar();
	while(!isdigit(c)) w=-1,c=getchar();
	while(isdigit(c)) s=s*10+(c^48),c=getchar();
	return s*w;
}

int main() {
	int n=read();
	int m=read();
	return 0;
}

int类型的快读(易懂)

inline int read(){
	int s=0,w=1;
	char ch=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 s*w;
}

int main() {
	int n=read();
	int m=read();
	return 0;
}

不分整数类型的快读

#include <cctype>

template <typename T>
inline void read(T &x){
	x=0; 
	char c=0; 
	T w=0;  
	while (!isdigit(c)) w=-1,c=getchar();  
	while (isdigit(c)) x=x*10+(c^48),c=getchar();  
	if(w) x=-x;  
}

fread快读(超快)

#include <cctype>
#include <cstdio>

char buf[1<<20],*p1,*p2;

#define gc() (p1 == p2 && (p2 = (p1 = buf) + fread(buf,1,1<<20,stdin), p1 == p2) ? 0 : *p1++)

template <typename T>
inline void read(T &x){
	x=0; 
	char c=0; 
	T w=0;  
	while (!isdigit(c)) w=-1,c=gc();  
	while (isdigit(c)) x=(x<<3)+(x<<1)+(c^48),c=gc();  
	if(w) x=-x;  
}

int main() {
	int n,m;
	read(n);
	read(m);
	return 0;
}

注意:使用fread快读后,getchar()、scanf()等都不能用了,它们都存入buf里了。所以不是特殊情况不要使用fread快读。

相关文章

输出优化(快写):https://blog.csdn.net/Ljnoit/article/details/104861089

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

【C++】输入优化(快读) 的相关文章

  • 通过shell编程实现对目录下文件的操作与管理

    作业需求 xff1a 在家目录下创建两个目录文件file dir和dir dir 如果家目录下有这两个 文件夹 xff0c 就不需要创建 xff0c 询问用户是否要对目录清空 Y N 输入一个文件路径 xff0c 判断 这个文件路径是否存在
  • 如何使用 OpenAI API ChatGPT,通过自然语言生成 SQL 语句(简易版)

    简介 Human Language to SQL Translator 是一个可以通过ChatGPT 可以生成 SQL 语句的网站 开源地址 xff1a https github com whoiskatrin sql translator
  • 创建一张顺序表,对其进行一系列操作

    需求 xff1a 创建一张顺序表 xff0c 并对其进行如下操作 xff1a 判空判满添加元素遍历任意位置插入任意位置删除按位置修改按值修改按位置查询按值查询排序求最值去重销毁 代码实现过程 xff1a seqList h xff1a if
  • 使用简单的IO函数实现文件拷贝功能

    需求 xff1a 用fgetc和fputc实现一个文件的拷贝 xff0c 例如将a c中的内容拷贝到b c中 拷贝完毕后 可以用diff指令判断 两个文件是否相同 xff1a diff a c b c 代码实现过程 xff1a includ
  • 电子词典流程图

  • 22-03-08

    分析vmlinux可执行文件是如何生成的 已知该vmlinux与compressed路径下的vmlinux不是同一个 xff0c 是位于内核源码顶层目录下的vmlinux xff0c 并且这个vmlinux是make的一部分 xff0c 因
  • 利用GPIO子系统实现LED1~3点亮

    需求 xff1a 利用GPIO子系统与定时器实现LED1 3每隔1s翻转一次 实现过程 xff1a 1 利用GPIO子系统实现驱动LED硬件工作 xff0c 需要利用核心层提供的API接口函数 2 gpio控制器结点已经在设备树文件中编写好
  • 编写驱动,应用层程序,在应用层通过ioctl控制LED灯流水,当按键KEY1按下,让风扇转动

    需求 xff1a 编写驱动 xff0c 应用层程序 xff0c 在应用层通过ioctl控制LED灯流水 xff0c 当按键KEY1按下 xff0c 让风扇转动 实现过程 xff1a 在源码目录下arch arm boot dts stm32
  • 使用platform框架实现led流水灯和按键中断开启风扇

    需求 xff1a 使用platform框架实现led流水灯和按键中断开启风扇 实现过程 xff1a 设备树文件 xff1a dts v1 include 34 stm32mp157 dtsi 34 include 34 stm32mp15x
  • Centos7安装Redis

    今天和大家分享如何在Centos7上部署Redis数据库 xff0c 感兴趣的小伙伴可收藏 目录 一 准备工作 二 搭建服务器 三 部署Redis 3 1 远程登录我们的服务器 3 2 配置Redis 3 3 测试Redis 3 4 服务器
  • 详细介绍云服务器购买并使用

    由于原先的服务器块过期了 xff0c 所以今天和大家分享一下如何从头开始购买云服务器并使用 目录 一 详细步骤 1 选择服务器 xff1a 2 购买服务器 xff1a 3 配置服务器操作系统 4 进入控制台 5 管理服务器 6 登录系统实例
  • SDN初学者之路

    今天重新开始拿起SDN完成我的关于SDN控制器下关于交换机迁移的负载均衡问题研究 以此对于SDN 43 RYU 43 多控制器 43 交换机迁移 43 负载均衡相关进行整理记录 其中 xff0c 主要研究内容是交换机迁移过程中的路径最优化选
  • 腾讯云短信服务(详细教程-Django框架、API接口)实现

    今天和大家分享如何实现短信服务 xff0c 以腾讯云服务为例 目录 一 准备工作 二 短信服务接口开发 2 1 服务配置 2 2接口开发 三 测试短信服务 四 结束语 一 准备工作 腾讯云短信服务会发放免费的个人认证短信和赠送短信总共200
  • Pytest测试框架基础篇

    今天和大家分享一下pytest测试框架的基础篇 xff0c 内容包括 xff1a 了解pytest测试框架的特点 掌握pytest基本使用 掌握pytest常用的场景 掌握pytest运行参数和配置方法 目录 一 测试框架的作用和类型 1
  • Pytest测试框架进阶篇

    今天和大家分享pytest测试框架进阶篇 xff0c 也可以称之为pytest测试框架核心 xff0c 主要核心有 xff1a 掌握pytest fixture 掌握pytest mark 目录 一 掌握pytest fixture 1 1
  • PowerDesigner--快速创建表模型生成SQL语句

    今天和大家分享一个我常用的设计表模型的工具PowserDesigner 选择物理模型 创建表 字段 索引等 梳理表之间的关系 一键生成SQL语句 目录 一 准备工作 二 选择物理模型 三 创建表 字段等 3 1 创建表 3 2 创建字段 3
  • python读取txt文件内容并进行分析

    今天和大家分享一下python如何读取txt文件内容并进行数据分析的 需求 某txt文件中存在很多数据 这些数据的某一个属性主要分为A B C D四类 xff0c 要求把数据分成四类求某一数值属性的平均值 xff0c 并统计生成超过平均值两
  • python脚本控制服务器---paramiko的使用

    今天和大家分享一个第三方库paramiko xff0c 主要应用场景是在实现自动化操作服务器时使用 xff0c 模拟我们手动登录服务器 输入cmd命令等操作 最后封装成自己的工具 xff0c 方便后面调用 目录 一 安装paramiko 二
  • Vim编辑器常用快捷方式

    这几天在学习shell编程 xff0c 其中常常会用到Linux下的vim编译器 xff0c 今天就总结一些在vim编辑器中常用的快捷键 xff0c 方便我们更好的使用 目录 一 vi编辑器基本概念 二 模式切换 三 编辑模式 四 命令行模

随机推荐

  • Linux面试相关知识点看着一文就够了

    今天和大家分享一下linux操作系统下主要用到的几个知识点 xff0c 分别是 xff1a linux目录结构 linux常用命令 文件权限操作 服务操作 yum安装命令 docker服务 vim编译器 pymysql测试连接 用户及组命令
  • Python对象比较及深浅拷贝

    今天和大家分享一个python语言中特别重要的一个知识点 xff0c 比较及拷贝 目录 一 61 61 和 is 二 深浅拷贝 2 1 浅拷贝 2 2 深拷贝 三 总结 一 61 61 和 is 等于 61 61 和is是Python中对象
  • python中的值传递和引用传递

    今天和大家分享python中很重要的一个知识点 xff1a 参数传递 xff0c 其中包括值传递和引用传递 目录 一 为什么要熟悉值传递和引用传递 1 1 值传递 1 2 引用传递 二 Python变量及其赋值 三 Python函数的参数传
  • MySQL8.0下DATE,DATETIME和TIMESTAMP的自动初始化和更新

    MySQL8 0下DATE DATETIME和TIMESTAMP的自动初始化和更新 DATE日期类型DATETIME和TIMESTAMP的不同什么是时区自动变动 xff1f DATETIME和TIMESTAMP的相同点微秒小数部分自动初始化
  • Python爬虫实战分析

    今天看到特别好的一篇文章 xff0c 分享给大家 从头到尾看了一遍 xff0c 以实战的例子分析爬虫所需要用到的知识点 十分受益 真可谓 xff1a python万能模板 xff0c 有了这个模板 xff0c 想爬取什么内容 xff0c 根
  • ansible dns

    1 详细叙述ansible的工作原理 工作原理 xff1a ansible是基于Python开发 xff0c 集合众多运维工具的优势 xff0c 实现批量的部署操作 xff0c ansible是基于模块化 xff0c 本身并没有部署能力 x
  • pip 安装命令 及 配置Path路径

    pip 不是内部或外部命令 也不是可运行的程序 或批处理文件 pip 安装命令 及 配置环境变量 numpy 输入pip install numpy 时 xff0c 提示 以numpy 为例 pip 不是内部或外部命令 也不是可运行的程序
  • 1-python工厂模式

    文章目录 工厂模式定义 xff1a 它的优点 xff1a 可以有如下三种实现方式1 简单工厂模式2 工厂方法模式3 抽象工厂模式总结 工厂模式定义 xff1a 在面向对象编程中 xff0c 术语 工厂 表示一个负责创建替他类型对象的类 通常
  • Facebook_Pop的使用指北

    背景 最近公司有了一个创新项目 xff0c 就是在视频视图之上添加一层视图 xff0c 视图设计涉及到了复杂的控件动画 xff0c 会根据视频的播放 xff0c 显示一些控件 xff0c 控件有位移 缩放 旋转 shake等动画 在网上调研
  • iOS Jenkins自动化打包 上传fir、蒲公英、邮件、钉钉提醒

    一 环境配置 注意 xff0c 本文章是以Jenkins2 263 4为例 1 首先安装Java环境 xff1a 官网下载地址 2 安装Jenkins 建议下载Jenkins 2 263 4版本 xff0c 因为最新版本存在login ke
  • iOS11 WKWebview App Crash闪退

    最近项目在iOS11 0 3 iOS11 1 2 iOS11 2 1 iOS 11 2 2 iOS11 2 6上面莫名其妙会崩溃 xff0c 本以为是block或者是设置User Agent导致的 xff0c 最后定位是Request设置u
  • iOS判断是否开启代理,防止Charles抓包

    直接检查是否设置了代理即可 BOOL checkProxySetting NSDictionary proxySettings 61 bridgeNSDictionary CFNetworkCopySystemProxySettings N
  • iOS 已有项目利用Pod集成RN

    一 背景 对于已经存在的iOS项目 xff0c 以模块化引入 xff0c OC与RN混编怎么做呢 xff1f 我们可以利用cocopods来集成 xff0c 直接使用pod install就可以让其他同事也快速集成 由于RN用npx rea
  • 使用信号量使AFNetworking异步变同步(dispatch_semaphore_t)

    背景 当H5调用OC的时候 xff0c 默认是在主线程的 xff0c 如果H5调用后 xff0c 需要原生返回数据 xff0c 而原生获取数据又是个耗时的异步操作就会有问题 xff0c 比如OC是一个网络请求 xff0c 那就需要等原生请求
  • Alice 与 Bob 的游戏 (概率DP)

    题目描述 Alice 和 Bob 两个人正在玩一个游戏 xff0c 游戏有很多种任务 xff0c 难度为 p 的任务 xff08 p是正整数 xff09 xff0c 有 1 2 p 的概率完成并得到 2 p 1 分 xff0c 如果完成不了
  • windows搭建WINS服务

    文章目录 SDCserver WINS 1 安装WINS并配置为辅助WINS 2 DCserver为主要的WINS服务器 3 定期复制主WINS服务器的记录 4 DCserver离线后 自动切换为辅助服务器 SDCserver设备上 提示
  • iOS 内存管理

    内存管理 1 内存布局 bss xff1a 未初始化的全局变量 静态变量等data xff1a 已初始化的全局变量 静态变量等text xff1a 程序代码 内存布局 2 内存管理方案 TaggedPointer xff1a 对于小对象NS
  • isKindOfClass和isMemberOfClass

    BOOL isKindOfClass Class aClass BOOL isMemberOfClass Class aClass 我们来看看这两个方法有什么不同 xff0c 首先看看问题 BOOL res1 61 id NSObject
  • AVAudioRecorder stop崩溃 在iOS13系统上

    iOS15和iOS16都正常 xff0c 但是测试反馈在iOS13的系统上 xff0c AVAudioRecorder的实例对象调用stop方法会崩溃 xff0c 并且debug不到任何信息 原因是由于AVAudioRecorder的实例对
  • 【C++】输入优化(快读)

    快速读入 xff0c 简称快读 xff0c 比cin printf 等都快 void类型的快读 span class token macro property span class token directive keyword inclu