【干货】ACM对拍程序 步骤演示

在打acm比赛时,如果一个程序实在不知道错在哪,对拍是一个很好的手段,对拍的意思就是对比两个文件,发现其中的差异,你可以写成另一个暴搜的程序得出答案,原来的程序的答案相匹配,看哪里错了。平时训练也可以这么找出你的wa程序和ac的程序之间的差别。下面就展示如何使用对拍。

比赛开始前就可以把对拍那三句话写好,还有三个txt建好,比赛时确实要用到对拍就在程序里写上freopen就行了

第一步:首先要生成个测试数据,上代码(这个测试数据按照题目要求自己造)

#include<cstdio>
#include<cstring>
#include<ctime>
#include<cstdlib>
int main(void)
{
    freopen("e://dp//data.txt","w",stdout);
    srand(time(NULL));
    int n=10000;//n多少自己定
    while(n--)
    {
        printf("%d\n",rand());
    }
    return 0;
}

运行上面这个程序后,就会在e盘的dp文件夹下(先自行创建)生成一个data.txt 的文本文档


打开data.txt ,会有许多测试数据,

接下来,会用到两个程序,一个是你写的错误程序,另一个是答案绝对正确的或者是爆搜的(TLE),分别重定向到dp里,错误程序输出为out2,正确程序输出为out1,

分别运行这两个程序后,

错误的:

正确的:

dp文件夹里会多出两个txt,out1.txt,out2.txt

下面是最重要的一步了

新建一个txt       

在duipai.txt里面输入

保存后,将duipai.txt的后缀改成duipai.bat

然后运行这个bat ,就可以看出对拍差距了

PS:你也可以直接通过cmd 敲命令进行对比

更多干货-关注公众号-阿sean私语,关于acm/校招/职场

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值