洛谷评测时有问题?
查看原帖
洛谷评测时有问题?
926043
wuyufeng9960楼主2024/8/29 15:11

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用的有点多)

测试点数据挂在题目附件里了

2024/8/29 15:11
加载中...