查错神器——对拍
Posted louhancheng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了查错神器——对拍相关的知识,希望对你有一定的参考价值。
对拍是个好东西。
对拍是个好东西。
对拍是个好东西。
当你苦苦找题解,却找不出自己代码哪里错,而OJ不给数据的时候——
当你灵光一闪,give birth to a new problem 的时候,却不知自己打的标程是否有误的时候——
当你比赛时间充裕,担心自己代码有问题的时候——
那就来打对拍吧!!!!
不会打??具体怎么做??继续往下看!!!
首先要普及一下bat(不是BAT Baidu Alibaba Tencent)的知识,因为它是对拍的主要组成部分.
大家用过cmd吧??(Windows + R -> cmd -> Enter)大家先了解下命令提示符的一些命令——
shutdown -p(不解释 暗笑)
fc 1.txt 2.txt (将1.txt 2.txt 的内容进行比较)
data.exe (调用data.exe这个可执行文件)
> 以及 < (表示文件传输方向,1.exe < input.txt > output.txt 将input.txt的内容输入到1.exe中,并将结果输出到output.txt中 )
errorlevel 1 (大家暂时理解为一个bool类型的变量吧)
if (分支语句)
goto (跳转到某个标记,如下图,这样可以实现不断执行:loop 和 goto loop之间的内容)
pause (暂停)
@echo off (把那些没用的信息全部过滤掉)
然后就可以完成一个简单的对拍啦!!
大家试着理解一下
data.exe里写着随机生成数据的代码(下面以对拍 公主的工作 为例,将我的代码和Hzwer大佬的题解对拍)要编译哦(F12)
别忘了打随机数种子srand(time(0));
注意不用文件输出。因为 data.exe > read.txt 已经确定了输出方向。
再把我的代码(左图)放到1.cpp中,Hzwer大佬的代码(右图)放到2.cpp中(为了能放在图中,将花括号位置进行了一些处理)
然后编译(注意要和data.exe放在同一个文件夹),生成两个exe文件(1.exe and 2.exe)。
然后新建一个文本文档,将扩展名改为bat,名字随便取(如dp.bat,lalala.bat,duipai.bat随便你)
右键dp.bat,点编辑
再把刚才那串东西输进去(具体意思不难理解吧??)
然后保存,点击dp.bat
呀,发现错误啦!!!
蓝后点击read.txt,那就是你出错的样例。
emmm,OMG!!! ans 没赋初值!!!!
改为ans(0) 蓝后就。。。。。。
这就说明你的代码基本没问题了。然后我就AC了QAQ
还不理解的就把完整的对拍下载下来看看吧 ——> https://files.cnblogs.com/files/louhancheng/dp.zip
以上是关于查错神器——对拍的主要内容,如果未能解决你的问题,请参考以下文章