对拍
你是否遇见过这种情况,自己的代码看上去和题解一模一样,输出的样例和题目给出的样例也一模一样,BUT 提交到代码之后就是过!不!去!(冷冷的冰雨在脸上胡乱地拍……)
靠天靠地靠祖宗,不如靠自己,这个时候我们就要拿出我们的超级武器——对拍,去搞定这个代码!
CPP版
主程序
1 #include<cstdio> 2 #include<cstdlib> 3 using namespace std; 4 int main() 5 { 6 do 7 { 8 system("make.exe"); //造数据 9 system("my.exe"); //自己的代码 10 system("std.exe"); //题解 11 }while(system("fc my.out std.out")==0); 12 return 0; 13 }
造数据程序
1 #include<iostream> 2 #include<windows.h> 3 #include<ctime> 4 using namespace std; 5 int main() 6 { 7 srand(time(NULL)); 8 cout<<rand()%10<<" "<<rand()%10; 9 return 0; 10 }
然后就是题解和自己的代码
接下来,我们要把这四个文件扔到一个文件夹里,把他们的exe文件都搞出来,然后运行主程序的exe文件就好了哦
Bat版
要用批处理的话,其实只是主程序用了bat,造数据还需要C++来实现
Bat主程序
1 @echo off 2 :1 3 make.exe 4 my.exe 5 std.exe 6 fc my.out std.out 7 if %errorlevel%==0 (goto 1) 8 pause
注:只需要打开一个记事本,把代码copy进去,然后把后缀名改成.bat就好了
//最后,对拍可能会是一个漫长的过程,有的时候需要耐心等待