代码debug技巧----对拍

虽然挺早就知道对拍这个方法,但是一直没有去试过,也不知道怎么做。
今天早上卿爷讲了一下对拍怎么做,觉得很是涨姿势。
而且上午刚学完就派上了用场,成功地为一道不明所以WA的搜索题找到了一个错误数据,进而改对了代码,成功AC。
记录一下对拍的方法。
1:需要先写一个随机数据生成程序datamake.cpp。按照题目的输入格式,随机生成输入数据。
2:需要写一个绝对正确的程序std.cpp。可以是这道题的暴力解法,跑小数据就可以。如果是网上有题解的题目也可以用别人的AC代码。
3:你之前写的等待debug的程序mycode.cpp
4:将这几个文件都放在一个文件夹里
这里写图片描述
将三个cpp文件都先编译一遍
5:在存放这三个文件的文件夹下创建一个txt文件,随便取个名字。比如说check。然后改一下文件的后缀名:将txt换成bat,也就是check.bat
6:编辑check.bat:

:loop
datamake.exe > data.txt          //make.exe是随机数据生成器程序
std.exe < data.txt > stdout.txt   //standard.exe标程程序
D.exe < data.txt > myout.txt   //overtaking.exe自己的程序
fc /A stdout.txt myout.txt
if not errorlevel 1 goto loop
pause
:end   

一切准备就绪之后,就可以双击点开check.bat,就会不断地用两个代码测试随机生成的数据,并比较是否相同。
代码debug技巧----对拍_第1张图片
【参考自】http://blog.csdn.net/churehill123/article/details/19647579

你可能感兴趣的:(2016暑期集训)