对拍程序
先读本博客,你会有更好的理解
1.正解
#include<bits/stdc++.h>
using namespace std;
int a,b;
int main(){
scanf("%d%d",&a,&b);
printf("%d",a+b);
}
2.暴力
#include<bits/stdc++.h>
using namespace std;
int a,b;
int main(){
cin>>a>>b;
cout<<a+b;
}
3.随机程序
#include<bits/stdc++.h>
using namespace std;
int a,b;
int main(){
srand(time(NULL));
a=rand()%1000;
b=rand()%1000;
printf("%d\n",a);
printf("%d\n",b);
}
随机生成[0,n-1]的数
int random(int x){
return rand()*rand()%x;
}
random(x);
**经多次试验发现,这个随机生成会比较稳定
r
a
n
d
∗
r
a
n
d
rand*rand
rand∗rand数据不太均匀,下面提供一种均匀的方案:
ll random(ll x){
return (rand()<<15|rand())%x;
}
`**加粗样式**``
## 随机生成[-n,n]间的数
int random(int x){
return rand()rand()%x;
}
randdom(2x+1);
## 随机生成[1,n]的数
random(x)+1
对拍程序:(多组数据)
在windows中有方便对拍的程序:
@echo off
:loop
rand.exe %random% >in.txt
baoli.exe <in.txt> baoliout.txt
zhengjie.exe <in.txt> zhengjieout.txt
fc zhengjieout.txt baoliout.txt
if not errorlevel 1 goto loop
pause
goto loop
//关于时间
clock_t t=clock()
printf("用时:%d",clock()-t);