首页 > 编程语言 > 详细

如何在考场上快速用C++写高级对拍器

时间:2020-10-17 11:51:58      阅读:32      评论:0      收藏:0      [点我收藏+]

众所周知,在考场上写完一道题的“正解”,不和暴力对拍一下,谁也不敢说自己可以 \(AC\)
然而,\(Windows\)批处理文件的循环经常写出 \(bug\) (起码我是这样)。

怎么办呢?这时候就轮到我们的 \(C++\) 上场了。

\(C++\) 写对拍器需要用到系统操作,全代码主要分为以下几个部分:

  1. 利用数据生成器(随机数大法好)、自己的程序、\(std\) 或者暴力,进行文件的读入读写。
  2. 读入两个文件并比较。
  3. 获得反馈。

技术分享图片

首先看文件的读写部分。在重复生成多组数据并跑出答案时,直接用我们常用 \(freopen\) 特别不方便,在这里我们使用 \(Sprinf\)
\(Sprintf\) 函数可以大致看作 \(Printf\) 函数的升级版,但是其功能强大的多。这里不做过多介绍。

首先创建一个 \(char\) 变量,作为对系统进行操作的"工具人"。 这里我命名为 \(buf\)。然后,利用 \(sprintf\)\(Windows\)\(bat\) 文件语言融合版,我们可以这么写:
sprintf(buf, "get.exe > 1.in"); system(buf);
后面的 \(system\) 表示对系统进行操作,get.exe为我们的数据生成器,即油 \(cpp\) 文件编译出来的应用程序。

如何在考场上快速用C++写高级对拍器

原文:https://www.cnblogs.com/wondering-world/p/13830057.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!