acm对拍程序 以及sublime text3的文件自动更新插件auto refresh

acm等算法比赛常用---对拍 以及sublime text3的文件自动更新插件auto refresh

对拍

对拍即程序自动对比正确程序的运行结果和错误程序的运行结果之间的差异

废话少说, 直接上操作步骤 :

1. 首先建立generator.cpp和data.txt 作用 : 生成测试数据

#include<bits/stdc++.h>
using namespace std;


int main(){
    freopen("data.txt","w",stdout); //重定向输出
    srand(time(NULL));
    xxxxx ; //此处为你想生成数据的操作
    return 0;
}

2. 然后建立AC.cpp和WA.cpp AC.txt和WA.txt 作用 : AC.cpp是绝对正确的程序, WA.cpp是你错误的程序

AC.cpp读取data.txt, 并输出内容到AC.txt

WA.cpp读取data.txt, 并输出内容到WA.txt

AC.cpp

#include<bits/stdc++.h>
using namespace std;

int main(){
    freopen("data.txt","r",stdin);
    freopen("AC.txt","w",stdout);
    xxxx ; //程序段
    return 0;
}

WA.cpp

#include<bits/stdc++.h>
using namespace std;

int main(){
    freopen("data.txt","r",stdin);
    freopen("WA.txt","w",stdout);
    xxxx ; //程序段
    return 0;
}

3. 最后建立result.bat -- 对拍比较

步骤 :

首先建立result.txt, 输入以下内容 :

@echo off
:loop
    generate.exe
    AC.exe 
    WA.exe 
    fc AC.txt WA.txt
if not errorlevel 1 goto loop 
pause
goto loop

之后将文件后缀改为.bat, 之后双击即可运行, 每次按键均会执行一遍数据生成--ac--wa---数据比较的过程, 并输出不相同的数据部分

最后整个文件夹应当是这样的 :

1591427306199

suiblime Text3 实现文件自动更新内容

实现了上述对拍操作后, 由于bat执行后只能给出数据不同的部分, 还需要打开两个txt文件才能查看全部数据

每次执行generate后产生不同的数据, 所以每次对拍结果并不相同.

在sublime text3中打开txt文件在你关闭bat之前是不会自己变化的, auto refresh的引入可以让文件内容自动更新

安装插件方法 :

ctrl + shift + p ----- install package ---- Autorefresh

然后命令行输入autofresh, 可以开启/关闭自动更新, 并可以保存这一文件状态

1591427653066

效果 :

1591427767198

按任意键循环继续对拍, 可以看到两个文件都自动更新了内容

1591427805784


over~~

原文链接: https://www.cnblogs.com/roccoshi/p/13054836.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍;

也有高质量的技术群,里面有嵌入式、搜广推等BAT大佬

    acm对拍程序 以及sublime text3的文件自动更新插件auto refresh

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/353373

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年3月2日 上午8:01
下一篇 2023年3月2日 上午8:04

相关推荐