type
status
date
Last edited time
slug
summary
tags
category
icon
password
comment
1 快读快写
1.1 快读
1.1.1 快读介绍
在 C++ 中,使用
cin
和 >>
操作符进行标准输入是很方便的,但在处理大量输入数据时,其效率相对较低,因为涉及到较多的输入流缓冲处理、类型检查等操作,会有一定的耗时。快读的目的就是通过更底层的方式来快速读取数据,减少不必要的开销,提高输入数据的速度,常用于需要高效处理大量输入的场景,比如算法竞赛中读取大规模的数组元素、图的节点信息等情况。1.1.2 代码
1.2 快写
1.2.1 快些介绍
C++ 标准的输出流
cout
结合 <<
操作符在输出大量数据时效率不高,因为有缓冲管理、格式化等操作会占用一定时间。快写就是采用更高效的方式将数据输出,减少额外的处理时间,常用于需要快速输出大量结果的场景,比如输出大规模数组元素、大量计算结果等情况。*注意:快读快些的模板没有声明命名空间,若你声明了(写了”using namespace std;”)请把”std::”去掉
2 对拍
2.1 对拍简介
对拍是一种用于程序验证的方法,主要应用在算法竞赛、软件开发中的代码测试等场景。它通过同时运行两个或多个不同实现(或不同算法思路)的程序,在相同的输入数据下比较它们的输出结果是否一致。这些程序可能包括一个被认为是正确的标准解法(如暴力解法,虽然效率可能不高,但结果准确)和一个待验证的优化解法或者新的算法实现。
2.2 对拍代码
2.2.1 data.cpp
这个代码是随机生成一个1-50的整数,范围、类型等可以自己调,测试数据格式也可以自己调
2.2.2 duipai.cpp
对拍主代码,在这个代码运行对拍
2.2.3 注意事项
暴力代码用solve.cpp文件名,你打的正解(对拍解)用std.cpp文件名。将这四个代码放在同一个文件夹中,否则无法运行。复制的代码你最好别改,除非你知道怎样改不会出错。
3 计算器
4 自定义函数
4.1 判断入栈出栈是否合法
sta(/*入栈顺序*/,/*出栈顺序*/);
函数:
例:出栈顺序