求hack
查看原帖
求hack
577384
donyking楼主2022/8/19 09:47

#16~#20和#34一直错

#include<bits/stdc++.h>
using namespace std;
int T,n,m;
long long a[100010],b[100010];
int main() {
	cin>>T;
	while(T--){
		memset(a,0,sizeof(a));
		memset(b,0,sizeof(b));
		bool flag=0;
		cin>>n>>m;
		//b[m+1]=1e17;
		if(n-1!=m){
			cout<<"NO"<<endl;
			continue;
		}
		int num=0;
		map<long long,int> bok;
		for(int i=1;i<=n;i++){
			cin>>a[i];
		}
		for(int i=1;i<=n;i++){
			cin>>b[i];
		}
		sort(a+1,a+1+n);
		sort(b+1,b+1+m);
		bool no2=0;
		for(int i=1,j=1;i<=n;i++,j++){
			if(j==n){
				num=a[n];
				break;
			}
			if(!flag && a[i]!=b[j]){
				num=a[i];
				j--;
				flag=1;
			}
			if(flag && a[i]!=b[i]){
				cout<<"NO"<<endl;
				no2=1;
				break;
			}
		}
		if(no2)continue;
		if(!flag){
			num=a[n];
		}
		//cout<<num<<' ';
		bool no3=0;
		for(int i=2;i*i<num;i++){
			if(num%i==0){
				cout<<"NO"<<endl;
				no3=1;
				break;
			}
		}
		if(no3)continue;
		cout<<"YES"<<endl;
	}
	return 0;
}
2022/8/19 09:47
加载中...