对拍

对拍

介绍一下这种利用暴力算法,随机造数据来验证自己的奇技淫巧的好方法.

(众所周知,对拍是用来造数据的)---来自lcez的信息教练

其实对拍是在考场上的一种很优秀的方式.

首先我们要写出一个保证正确性的代码,利用爆搜啊,打表啊,递归啊等不符合时间,空间复杂度但是可以保证正确性的暴力算法

然后,写一个不会超出题目数据范围的一个随机数生成代码.以及你想用的奇技淫巧

最后是一个简简单单的对拍代码

for(int i=1;i<=500;i++)
    {
		system("make_data.exe > make_data.txt");//生成数据
		system("std.exe < make_data.txt > std.txt");//跑暴力
		double begin=clock();
		system("qjyq.exe <make_data.txt > qjyq.txt");//跑奇技淫巧
		double end=clock();
    //begin和end存储的是开始运行时间和结束时间
		if(system("fc qjyq.txt std.txt"))//fc是比较两个结果相不相同的一个函数
			{puts("Wrong answer");
			return 0;} 
		else 
			printf("Accepted 测试点#%d  用时 %.0lfms
",i,end-begin);  
	}

当然你也可以使用cmd去满足以上需求.

原文地址:https://www.cnblogs.com/--840-114/p/13541509.html