對拍

我们假定您已经阅读了右侧详细的博客: 戳我

本文仅限于Windows系统下讨论。

0. 数据生成

  可以暴力rand,也可以卡到数据范围顶部。

  例:

#include<stdio.h>
#include<windows.h>
#include<time.h> signed main(){ srand(time(NULL)); printf("%d %d\n",rand(),rand()); }

1. 打正解

  例:

int main(){}

2. 打暴力

  例:

signed main(){}

3. 对拍程序

由于C with STL 的文件重定向太麻烦,我们用 BAT 

首先,bat很好写

然后,我们就可以写出它。

  例:

@echo off
:loop
    数据生成程序.exe > input.txt
    正解.exe < input.txt > output1.txt
    暴力.exe < input.txt > output2.txt
    fc output1.txt output2.txt
if not errorlevel 1 goto loop
pause
goto loop
end

  而且为了养成一遍ac的习惯,还可以使用以下程序。

@echo off
:loop
    数据生成程序.exe > input.txt
    正解.exe < input.txt > output1.txt
    暴力.exe < input.txt > output2.txt
    fc output1.txt output2.txt
if not errorlevel 1 goto loop
shutdown -s -t 0
goto loop
end

4. 时间控制

  调用clock函数,可知道某一段语句内程序运行的时间。分度值为1ms。

  例:

#include<stdio.h>
#include<time.h>
signed main(){
    clock_t start;
    float fuck=clock();
    printf("shit!\n");
    printf("%f\n",clock()-fuck);
}

 

5. 空间控制

  手算。

6. 是否能A

  显然,和自己对拍。再把它交上去。

  然后,就过了!

posted @ 2019-07-22 17:09  monyhzc  阅读(185)  评论(0编辑  收藏  举报