Linux系统下对拍

可以直接用C++的system函数执行对拍脚本
把造数据的mk.out文件和两个版本的代码文件放在一个文件夹下

void duipai() {
    //Linux系统下可执行文件后缀为.out
    while (true) {
        system("./mk > data.in");
        system("./zhengjie < data.in > zhengjie.out");
        system("./baoli < data.in > baoli.out");
        if (system("diff zhengjie.out baoli.out")) {//fc
            cout << "WA" << endl;
            break;
        } else cout << "AC" << endl;
    }
}

Linux的shell脚本

make mk
make zhengjie
make baoli

((cnt=1))

while true
do
	./mk > in
	./zhengjie < in > zhengjie.out
	./baoli < in > baoli.out
	if diff zhengjie.out baoli.out; then
		printf "# $((cnt++)) Accepted\n";
	else 
		notify-send "WA"
		break
	fi
done
posted @ 2025-10-15 23:15  Marinaco  阅读(3)  评论(0)    收藏  举报
//雪花飘落效果