zoukankan      html  css  js  c++  java
  • 关于对拍

    引入:

    首先,对拍是我们考试的时候常用的手法,既可以检验代码正确性,又不用我们耗费太多精力
    但是,我们将对拍放到后台,有的时候拍出了问题,我们却发现不了,导致拍出错也没时间调
    下面小编就来讲一讲怎么很好的处理这个问题

    普通版本

    #include <bits/stdc++.h>
    using namespace std;
    int main(){                      
        system("g++ a.cpp -o a");
        system("g++ data.cpp -o data");
        system("g++ std.cpp -o std");
        for(int T=1;T;T++){
            system("./data");
            system("./a");
            system("./std");
            if(system("diff -b -B -q a.out std.out")) return cout << "Wrong Answer" << endl,0;
            else printf("test : %d : Accept
    ",T);
        }
        return 0;
    }
    
    

    这样的对拍貌似没有问题,但是却不能让我们及时发现自己的错误
    所以我们需要优化,下面就是优化版本

    优化

    #include <bits/stdc++.h>
    using namespace std;
    int main(){                      
        system("g++ a.cpp -o a");
        system("g++ data.cpp -o data");
        system("g++ std.cpp -o std");
        for(int T=1;T;T++){
            system("./data");
            system("./a");
            system("./std");
            if(system("diff -b -B -q a.out std.out")) return system("kill -9 -1"),0;
            else printf("test : %d : Accept
    ",T);
        }
        return 0;
    }
    

    这样不仅可以很容易的发现自己的错误,更可以加深印象,而且绝对不会出现没有看到的情况

    是不是很实用呢?
    觉得实用点点推荐叭

    如初见 与初见
  • 相关阅读:
    列表推导式,生成器表达式
    迭代器,生成器初始
    装饰器的进阶
    函数名用途,初始装饰器
    函数参数,和空间
    py文件的操作
    字符串相关操作
    python基础二
    Django简介
    Django初识
  • 原文地址:https://www.cnblogs.com/HISKrrr/p/13922337.html
Copyright © 2011-2022 走看看