查错神器——对拍
对拍是个好东西。 对拍是个好东西。 对拍是个好东西。 当你苦苦找题解,却找不出自己代码哪里错,而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 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |