rt,我出了一道题,但是用造数据的程序提交时却出现了错误
随机.in的代码
#include<bits/stdc++.h>
using namespace std;
int main(){
freopen("1.in","w",stdout);
int n;
srand(time(0));
n=rand()%89999999+10000000;
cout<<n<<endl;
int times=rand()%10000;
for(int i=1;i<=times;i++){
int p;
p=rand()%89999999+10000000;
if(p!=n)cout<<p<<endl;
}
cout<<n<<endl;
}
造数据的代码
#include<bits/stdc++.h>
using namespace std;
int main(){
freopen("1.out","w",stdout);
freopen("1.in","r",stdin);
int a[9],b[9];
for(int i=1;i<=8;i++){
a[i]=getchar();
}
getchar();
while(true){
bool flag=1;
for(int i=1;i<=8;i++){
b[i]=getchar();
if(a[i]!=b[i]) flag=0;
}
getchar();
if(flag){
cout<<"PASS!!!";
return 0;
}
for(int i=1;i<=8;i++){
flag=0;
if(a[i]==b[i]){
cout<<"^";
continue;
}
for(int j=1;j<=8;j++){
if(a[j]==b[i]){
cout<<"&";
flag=1;
break;
}
}
if(flag){
continue;
}
cout<<"+";
}
cout<<endl;
}
return 0;
}
提交的代码
#include<bits/stdc++.h>
using namespace std;
int main(){
int a[9],b[9];
for(int i=1;i<=8;i++){
a[i]=getchar();
}
getchar();
while(true){
bool flag=1;
for(int i=1;i<=8;i++){
b[i]=getchar();
if(a[i]!=b[i]) flag=0;
}
getchar();
if(flag){
cout<<"PASS!!!";
return 0;
}
for(int i=1;i<=8;i++){
flag=0;
if(a[i]==b[i]){
cout<<"^";
continue;
}
for(int j=1;j<=8;j++){
if(a[j]==b[i]){
cout<<"&";
flag=1;
break;
}
}
if(flag){
continue;
}
cout<<"+";
}
cout<<endl;
}
return 0;
}
也不知道是哪里的问题 (但是getchar用的有点多)
测试点数据挂在题目附件里了