对拍(windows环境)

“对拍“是什么

我们在调试代码时,经常会遇到困难,其中之一是程序检查不出错误,手造数据太麻烦。如果我们可以很快写出一种暴力但复杂度较高的程序,用于对比两个代码的运行答案,则可以使用对拍来检查程序存在的问题。

对拍的步骤

需要准备的文件(在同一目录下)

mk.cpp

在对拍之前,我们需要写一个mk.cpp来造数据

在main函数的前面写上一句

freopen("1.in","w",stdout);

意为:该程序运行的结果输出到名为1.in的文件里,文件打开方式为”写“(w:write),输出方式为标准输出。

mk.cpp的作用是造随机数据,所以程序里要随机出输入的数据,比如n,m,边权等,并且按给定输入格式输出到文件中。

std.cpp

用于对比答案的暴力程序。在main函数内第一行写上:

freopen("1.in","r",stdin);

意为:该程序运行时将从1.in中读入数据,文件打开方式为”写“(r:read),输入方式为标准输入。

紧接着第二行写上:

freopen("std.out","w",stdout);

意为:程序以写的方式打开std.out文件,输出方式为标准输出。

写上这两句后,该程序的输入就能读入用mk.cpp造的数据,并且将运行结果输出到std.out中。

solver.cpp

这是你在调试中的程序。在main函数的前两行写上:

freopen("1.in","r",stdin);

freopen("solver.out","w",stdout);

从1.in读入数据,输出结果到solver.out中

以上程序按顺序编译运行后,得到的exe文件也要在同一目录下。

然后就可以写一个在windows下对拍的命令行啦!

windows命令行

step 1

新建文件 dp.bat

右键,点击编辑

step 2

在编辑框内写上

mk//运行mk.exe
std
solver
fc solver.out std.out//对比两个文件,fc :file compare
if errorlevel=1 pause//如果对比出现不一致,停止程序
%0//不关闭命令窗口

保存

step 3

点击dp.bat 文件,即可自动运行

step 4

观察运行结果,如果有不一致的地方,会将输入数据,两个程序的运行结果显示在黑框内,利用该组数据来调试即可

原文地址:https://www.cnblogs.com/JWizard/p/12210005.html

时间: 2024-10-09 05:11:18

对拍(windows环境)的相关文章

定制windows环境下cmd替代软件ConEmu

定制windows环境下cmd替代软件ConEmu 公认的是Windows环境下命令行界面太难用. 不管是cmd还是powershell都不顺手!!窗口宽度不能全屏,字体太难看还不能调整,窗口背景不能更换,永远的黑白配,最痛苦的是复制和粘贴.都不知道MS是怎么想的?搞个这么个反人类的东西出来,还万年不变,从Windows诞生到Windows7不论是桌面版还是服务器版都一样,到了windows8/windows10换成powershell一样的鸡肋. 在百度搜了一下,找到cmd的替代软件conem

《高可用MySQL》1 – Windows环境下压缩版MySQL安装

近日在读O'REILIY系列的<高可用MySQL>, 自然少不了主从(Master-Slave)配置和横向扩展相关的内容. Master-Slave这东西吧.在很多公司都是标配.开发中基本天天都用.遇到的问题自然也不少(如主从不同步,Master宕机).但操作权限很有限.有些东西,仅仅有自己看了.做了,才干真正知道原理是什么,也才干更好的去把握. 本文是高可用MySQL的第一篇读书笔记,主要记录Windows环境下压缩版MySQL(基于安装版的傻瓜式安装过程这里不再提及)的安装过程. 1. 从

python MySQLdb在windows环境下的快速安装、问题解决方式

使用Python访问MySQL,需要一系列安装 Linux下MySQLdb安装见 Python MySQLdb在Linux下的快速安装 http://blog.csdn.net/wklken/article/details/7271019 ------------------------------------------------------------- 以下是windows环境下的: 1.      安装数据库mysql 下载地址:http://www.mysql.com/downloa

Windows环境下Android Studio v1.0安装教程

Windows环境下Android Studio v1.0安装教程 Windows环境下Android Studio v1.0安装教程 准备工具 JDK安装包. 要求:JDK 7以及以上版本. Android Studio安装文件. Windows: exe(包含SDK) (813 MB) exe(不包含SDK) (250 MB) zip (235 MB) Mac dmg (234 MB) zip (233 MB) Linux: zip (233 MB) 说明: 32位系统和64位系统是同一个安

简单介绍TPshop商城使用,TPshop商城使用的安装--windows环境

本文针对初学者,大神请忽略. 我用的是 wampserver 做演示,怎么下载,安装环境.百度一大堆 ,这里不多说.自己动手 丰衣足食. TPshop下载地址:tp-shop.cn/Index/Index/download 也可以搜索搜豹公司,TPshop商城 安装要求: 1.PHP5.4以上,MYsql5.5以上. 2.需要Phpcurl,gd库.php_mysqli,php_openssl,php_pdo_mysql,php_zip扩展. 3.php.ini里面将scandir打开, 4.注

手把手教你在Windows环境下升级R

在Windows环境下,我们可以使用installr包自动将R升级到最新版本.并且可以安装软件.下面主要演示如何在Windows环境下升级R,并将旧版本安装的R包复制到更新版本的R. 1.加载installr包 install.packages("installr") library(installr) 2.在“installr”菜单中选择“update R” 3.installr将会检测是否发布了新版本的R,如果检查到有单击“确定”即可更新R. 4.如果想了解新版本R的相关特性介绍,

[转]Windows环境下尝试安装并配置PHP PEAR备忘

转自:http://wangye.org/blog/archives/266/ 什么是PEAR 来自百度百科:PEAR 是PHP扩展与应用库(the PHP Extension and Application Repository)的缩写.它是一个PHP扩展及应用的一个代码仓库,简单地说,PEAR之于PHP就像是CPAN(Comprehensive Perl Archive Network)之于Perl. 由此可见PEAR是PHP代码的仓库,在这里可以找到很多有用的代码,避免我们重复写一些功能,

Android中开发工具Android Studio修改created用户(windows环境)

最近经常有朋友反馈说我的安卓项目中,在一些类中会出现Created by panchengjia on 2016/12/30的字样,是如何自动实现的(默认一般为Administrator),如下图: 实现上图这种效果,仅仅修改控制面板中的用户账户名是没有用的. 下面我简单介绍下windows环境下的实现方式: (1)进入本地组策略编辑器 可以通过快捷键windows键+R打开运行窗口或者直接点开始菜单选运行,输入gpedit.msc (2)修改管理员账户名 进入本地组策略编辑器后,后续操作如下图

JMeter--二、在Windows环境上搭建wordpress

为了学习使用JMeter,在Windows环境上搭建了wordpress. 使用JMeter录制或是编写登录worepress.编辑文章.删除文章的脚本. 首先了解一下wordpress是什么? WordPress是一个免费的开源项目,是博客平台:也可以把 WordPress当作一个CMS(Content Manager System,内容管理系统)来使用. wordpress是使用PHP语言和MySQL数据库开发的. 因此,为了能够正常使用wordpress,我们需要在windows环境上搭建

windows环境Caffe安装配置步骤(无GPU)及mnist训练

在硕士第二年,义无反顾地投身到了深度学习的浪潮中.从之前的惯性导航转到这个方向,一切从头开始,在此,仅以此文记录自己的打怪之路. 最初的想法是动手熟悉Caffe,考虑到直接上手Ubuntu会有些难度,所以首先在windows环境下打个基础.有个插曲,台式机由于某些原因只能保持在32位系统,编译caffe.cpp时才发现系统不兼容,然后才换到64位的笔记本上进行操作. 前期准备:1.VS 2013   2. windows版的Caffe(https://github.com/BVLC/caffe/