对拍可以帮助我们在比赛过程中或者平时练习帮助我们找到程序错误的地方,非常useful
首先对拍一共需要四个c++程序,一个是你自己写的程序假设命名为my.cpp,那么运行的时候会生成一个my.exe,一个是暴力或者正解的程序假设命名为std.cpp,那么运行时会生成一个std.exe,一个是随机数的文件,用于生成题目要求的各类参数假设命名为rand.cpp,运行生成rand.exe,还有一个就是比较程序pai.cpp用于对拍比较
my.cpp格式:
#include <bits/stdc++.h> using namespace std; int main() { //首先必须要打开输入输出文件,假设随机的数据都存在test.in里面,要输出到a.out里面 freopen("test.in", "r", stdin); freopen("a.out", "w", stdout); //你的程序代码 .... return 0; }
std.cpp格式:
#include <bits/stdc++.h> using namespace std; int main() { //首先必须要打开输入输出文件,假设随机的数据都存在test.in里面,要输出到b.out里面 freopen("test.in", "r", stdin); freopen("b.out", "w", stdout); //正解或暴力程序代码 .... return 0; }
rand.cpp格式:
#include <bits/stdc++.h> using namespace std; int main() { //需要把随机数输出到test.in文件里面 freopen("test.in", "w", stdout); //随机数输出 随机数一般不需要太大 如果太大都没法手玩看看错在哪里了 特殊情况除外 srand(time(0)); cout << rand() << " " << rand();//可以自行确定数据范围 .... return 0; }
pai.cpp格式:
#include <bits/stdc++.h> using namespace std; int main() { while (true) { system("rand.exe");//运行rand.exe system("my.exe");//运行my.exe system("std.exe");//运行std.exe if (system("fc a.out b.out")) {//比较输出a.out和b.out 不符合则暂停 system("pause"); } } }
浅谈对拍(useful)
最新推荐文章于 2024-07-12 20:52:35 发布