ACM程式對拍

2021-08-21 13:46:06 字數 707 閱讀 1740

刷過acm題的同學應該都有這種體會,感覺自己已經考慮的很充分了,但就是一直wa,這時候,如果有乙份能夠保證100%正確的**,再加上題目資料比較好利用隨機數創造時,便可以使用對拍來找到錯在哪些資料上了。

我們需要三個exe檔案加乙個bat檔案再加兩個txt檔案。首先我們先建立乙個資料夾,在資料夾裡新建乙個txt文字文件,輸入以下**後把字尾改為.bat

:again

data.exe > input.txt

my.exe < input.txt > my.txt

std.exe < input.txt > std.txt

fc my.txt std.txt

if not errorlevel 1 goto again

pause

其中data.exe是用來產生資料的,my.exe是你寫的**編譯後產生的exe檔案,std.exe是乙個100%正確的**編譯後產生的檔案。把三個exe檔案都複製到之前新建的資料夾裡(記得重新命名),再在資料夾裡建立兩個txt文字,分別改名為my.txt和std.txt,然後雙擊bat檔案就可以了。

ACM程式對拍

有時候在oj刷題目的時候,總是會遇到不知名bug,題目總不能ac,自己測試的一些資料又都能得出正確的結果,又或是直接暴力會tle,改了演算法,但是仍然wa,這時候進行程式對拍測試資料不失為乙個好辦法。程式對拍主要是通過資料生成器生成隨機資料,然後與正確程式跑出來的結果進行比對,雖然有時候資料很難構造...

ACM 中的對拍程式

所謂對拍,就是隨機生成資料,然後用乙個肯定正確的暴力演算法的程式,去測試乙個要提交的程式。由於比賽中一般使用 linux 系統,所以本篇部落格的 都是 linux 下的程式 其實最簡單的方式是寫指令碼。這裡介紹的是用選手最熟悉的 c 語言寫對拍程式。假設要提交的程式為 sol.cpp,暴力的程式為 ...

對拍程式寫法

一口毒奶 bat的寫法 echo off loop rand.exe in txt mycode.exe in txt myout.txt baoli.exe in txt baoliout.txt fc myout.txt baoliout.txt if not errorlevel 1 goto...