60分前4点wa求调
查看原帖
60分前4点wa求调
1043752
liuzihao1234楼主2023/11/5 10:54

60求调前4wa

#include<bits/stdc++.h>
using namespace std;
int ax[100];
int main() {
	int n,mm=0;
	cin>>n;
	for(int i=1; i<=n; i++) {
		for(int j=1; j<=5; j++) {
			cin>>ax[(i-1)*5+j];	
		}
	}
	for(int i=0; i<=99999; i++) {
		int nn=0; 
		int flag2=1;
		int nm=0;
		if(i==71117){
			int f=1;
		}
		int cx[6]={0};
		int q=i;
		for(int w=5;w>=1;w--){
		    cx[w]=q%10;	
			q/=10;
		}
		for(int x=1; x<=n; x++) {
			if(flag2==0){
				break;
			}
			int ans=0;
			int p1=0,p2=0;
			for(int j=1;j<=5;j++){
				if(cx[j]!=ax[(x-1)*5+j]){
				    if(ans==1&&cx[j-1]!=ax[(x-1)*5+j-1]){
						p2=j;
					}else if(ans==0){
						p1=j;
					}else {
						ans=7;
						flag2=0;
						break;
					}
					ans++;
				}
				
			}
			if(flag2==0){
				break;
			}
			if(ans==1){
				nn++;
				//cout<<i<<endl;
			}else if(ans==2){
			    if((cx[p1]-cx[p2]==ax[(x-1)*5+p1]-ax[(x-1)*5+p2])||(abs(cx[p1]-cx[p2])==10-abs(ax[(x-1)*5+p1]-ax[(x-1)*5+p2]))){
					nn++;
					//cout<<i<<endl;	
				}else{
					flag2==0;
					break;
				}
			}else {
				flag2==0;
				break;
			}
			
		}
		if(nn==n){
			mm++;
		}
	}
	cout<<mm;
	return 0;
}
2023/11/5 10:54
加载中...