#CSPS2023A. 密码锁

#include<bits/stdc++.h>
using namespace std;
using ll=long long;
ll a[10][10];
int main(){
	freopen("lock.in","r",stdin);
	freopen("lock.out","w",stdout);
	int n;
	cin>>n;
	for(int i=1;i<=n;i++){
		for(int j=1;j<=5;j++){
			cin>>a[i][j];
		}
	}
	ll ans=0;
	for(int i1=0;i1<=9;i1++){
		for(int i2=0;i2<=9;i2++){
			for(int i3=0;i3<=9;i3++){
				for(int i4=0;i4<=9;i4++){
					for(int i5=0;i5<=9;i5++){
						int sum=0;
						if(n>=1){
							if(a[1][1]!=i1 && a[1][2]==i2 && a[1][3]==i3 && a[1][4]==i4 && a[1][5]==i5) sum++;
							if(a[1][1]==i1 && a[1][2]!=i2 && a[1][3]==i3 && a[1][4]==i4 && a[1][5]==i5)	sum++;
							if(a[1][1]==i1 && a[1][2]==i2 && a[1][3]!=i3 && a[1][4]==i4 && a[1][5]==i5)	sum++;
							if(a[1][1]==i1 && a[1][2]==i2 && a[1][3]==i3 && a[1][4]!=i4 && a[1][5]==i5) sum++;
							if(a[1][1]==i1 && a[1][2]==i2 && a[1][3]==i3 && a[1][4]==i4 && a[1][5]!=i5)	sum++;
							if(a[1][1]!=i1 && a[1][2]!=i2 && a[1][3]==i3 && a[1][4]==i4 && a[1][5]==i5)	if((a[1][1]+10-i1)%10==(a[1][2]+10-i2)%10) sum++;
							if(a[1][1]==i1 && a[1][2]!=i2 && a[1][3]!=i3 && a[1][4]==i4 && a[1][5]==i5)	if((a[1][3]+10-i3)%10==(a[1][2]+10-i2)%10) sum++;
							if(a[1][1]==i1 && a[1][2]==i2 && a[1][3]!=i3 && a[1][4]!=i4 && a[1][5]==i5)	if((a[1][3]+10-i3)%10==(a[1][4]+10-i4)%10) sum++;
							if(a[1][1]==i1 && a[1][2]==i2 && a[1][3]==i3 && a[1][4]!=i4 && a[1][5]!=i5)	if((a[1][4]+10-i4)%10==(a[1][5]+10-i5)%10) sum++;
						}
						if(n>=2){
							if(a[2][1]!=i1 && a[2][2]==i2 && a[2][3]==i3 && a[2][4]==i4 && a[2][5]==i5) sum++;
							if(a[2][1]==i1 && a[2][2]!=i2 && a[2][3]==i3 && a[2][4]==i4 && a[2][5]==i5)	sum++;
							if(a[2][1]==i1 && a[2][2]==i2 && a[2][3]!=i3 && a[2][4]==i4 && a[2][5]==i5) sum++;
							if(a[2][1]==i1 && a[2][2]==i2 && a[2][3]==i3 && a[2][4]!=i4 && a[2][5]==i5) sum++;
							if(a[2][1]==i1 && a[2][2]==i2 && a[2][3]==i3 && a[2][4]==i4 && a[2][5]!=i5) sum++;
							if(a[2][1]!=i1 && a[2][2]!=i2 && a[2][3]==i3 && a[2][4]==i4 && a[2][5]==i5)	if((a[2][1]+10-i1)%10==(a[2][2]+10-i2)%10) sum++;
							if(a[2][1]==i1 && a[2][2]!=i2 && a[2][3]!=i3 && a[2][4]==i4 && a[2][5]==i5)	if((a[2][3]+10-i3)%10==(a[2][2]+10-i2)%10) sum++;
							if(a[2][1]==i1 && a[2][2]==i2 && a[2][3]!=i3 && a[2][4]!=i4 && a[2][5]==i5)	if((a[2][3]+10-i3)%10==(a[2][4]+10-i4)%10) sum++;
							if(a[2][1]==i1 && a[2][2]==i2 && a[2][3]==i3 && a[2][4]!=i4 && a[2][5]!=i5)	if((a[2][4]+10-i4)%10==(a[2][5]+10-i5)%10) sum++;
						}
						if(n>=3){
							if(a[3][1]!=i1 && a[3][2]==i2 && a[3][3]==i3 && a[3][4]==i4 && a[3][5]==i5)	sum++;
							if(a[3][1]==i1 && a[3][2]!=i2 && a[3][3]==i3 && a[3][4]==i4 && a[3][5]==i5) sum++;
							if(a[3][1]==i1 && a[3][2]==i2 && a[3][3]!=i3 && a[3][4]==i4 && a[3][5]==i5) sum++;
							if(a[3][1]==i1 && a[3][2]==i2 && a[3][3]==i3 && a[3][4]!=i4 && a[3][5]==i5)	sum++;
							if(a[3][1]==i1 && a[3][2]==i2 && a[3][3]==i3 && a[3][4]==i4 && a[3][5]!=i5)	sum++;
							if(a[3][1]!=i1 && a[3][2]!=i2 && a[3][3]==i3 && a[3][4]==i4 && a[3][5]==i5)	if((a[3][1]+10-i1)%10==(a[3][2]+10-i2)%10) sum++;
							if(a[3][1]==i1 && a[3][2]!=i2 && a[3][3]!=i3 && a[3][4]==i4 && a[3][5]==i5)	if((a[3][3]+10-i3)%10==(a[3][2]+10-i2)%10) sum++;
							if(a[3][1]==i1 && a[3][2]==i2 && a[3][3]!=i3 && a[3][4]!=i4 && a[3][5]==i5)	if((a[3][3]+10-i3)%10==(a[3][4]+10-i4)%10) sum++;
							if(a[3][1]==i1 && a[3][2]==i2 && a[3][3]==i3 && a[3][4]!=i4 && a[3][5]!=i5)	if((a[3][4]+10-i4)%10==(a[3][5]+10-i5)%10) sum++;
						}
						if(n>=4){
							if(a[4][1]!=i1 && a[4][2]==i2 && a[4][3]==i3 && a[4][4]==i4 && a[4][5]==i5) sum++;
							if(a[4][1]==i1 && a[4][2]!=i2 && a[4][3]==i3 && a[4][4]==i4 && a[4][5]==i5) sum++;
							if(a[4][1]==i1 && a[4][2]==i2 && a[4][3]!=i3 && a[4][4]==i4 && a[4][5]==i5) sum++;
							if(a[4][1]==i1 && a[4][2]==i2 && a[4][3]==i3 && a[4][4]!=i4 && a[4][5]==i5) sum++;
							if(a[4][1]==i1 && a[4][2]==i2 && a[4][3]==i3 && a[4][4]==i4 && a[4][5]!=i5) sum++;
							if(a[4][1]!=i1 && a[4][2]!=i2 && a[4][3]==i3 && a[4][4]==i4 && a[4][5]==i5)	if((a[4][1]+10-i1)%10==(a[4][2]+10-i2)%10) sum++;
							if(a[4][1]==i1 && a[4][2]!=i2 && a[4][3]!=i3 && a[4][4]==i4 && a[4][5]==i5)	if((a[4][3]+10-i3)%10==(a[4][2]+10-i2)%10) sum++;
							if(a[4][1]==i1 && a[4][2]==i2 && a[4][3]!=i3 && a[4][4]!=i4 && a[4][5]==i5)	if((a[4][3]+10-i3)%10==(a[4][4]+10-i4)%10) sum++;
							if(a[4][1]==i1 && a[4][2]==i2 && a[4][3]==i3 && a[4][4]!=i4 && a[4][5]!=i5)	if((a[4][4]+10-i4)%10==(a[4][5]+10-i5)%10) sum++;
						}
						if(n>=5){
							if(a[5][1]!=i1 && a[5][2]==i2 && a[5][3]==i3 && a[5][4]==i4 && a[5][5]==i5)	sum++;
							if(a[5][1]==i1 && a[5][2]!=i2 && a[5][3]==i3 && a[5][4]==i4 && a[5][5]==i5)	sum++;
							if(a[5][1]==i1 && a[5][2]==i2 && a[5][3]!=i3 && a[5][4]==i4 && a[5][5]==i5)	sum++;
							if(a[5][1]==i1 && a[5][2]==i2 && a[5][3]==i3 && a[5][4]!=i4 && a[5][5]==i5)	sum++;
							if(a[5][1]==i1 && a[5][2]==i2 && a[5][3]==i3 && a[5][4]==i4 && a[5][5]!=i5)	sum++;
							if(a[5][1]!=i1 && a[5][2]!=i2 && a[5][3]==i3 && a[5][4]==i4 && a[5][5]==i5) if((a[5][1]+10-i1)%10==(a[5][2]+10-i2)%10) sum++;
							if(a[5][1]==i1 && a[5][2]!=i2 && a[5][3]!=i3 && a[5][4]==i4 && a[5][5]==i5)	if((a[5][3]+10-i3)%10==(a[5][2]+10-i2)%10) sum++;
							if(a[5][1]==i1 && a[5][2]==i2 && a[5][3]!=i3 && a[5][4]!=i4 && a[5][5]==i5)	if((a[5][3]+10-i3)%10==(a[5][4]+10-i4)%10) sum++;
							if(a[5][1]==i1 && a[5][2]==i2 && a[5][3]==i3 && a[5][4]!=i4 && a[5][5]!=i5)	if((a[5][4]+10-i4)%10==(a[5][5]+10-i5)%10) sum++;
						}
						if(n>=6){
							if(a[6][1]!=i1 && a[6][2]==i2 && a[6][3]==i3 && a[6][4]==i4 && a[6][5]==i5)	sum++;
							if(a[6][1]==i1 && a[6][2]!=i2 && a[6][3]==i3 && a[6][4]==i4 && a[6][5]==i5)	sum++;
							if(a[6][1]==i1 && a[6][2]==i2 && a[6][3]!=i3 && a[6][4]==i4 && a[6][5]==i5) sum++;
							if(a[6][1]==i1 && a[6][2]==i2 && a[6][3]==i3 && a[6][4]!=i4 && a[6][5]==i5)	sum++;
							if(a[6][1]==i1 && a[6][2]==i2 && a[6][3]==i3 && a[6][4]==i4 && a[6][5]!=i5)	sum++;
							if(a[6][1]!=i1 && a[6][2]!=i2 && a[6][3]==i3 && a[6][4]==i4 && a[6][5]==i5)	if((a[6][1]+10-i1)%10==(a[6][2]+10-i2)%10) sum++;
							if(a[6][1]==i1 && a[6][2]!=i2 && a[6][3]!=i3 && a[6][4]==i4 && a[6][5]==i5)	if((a[6][3]+10-i3)%10==(a[6][2]+10-i2)%10) sum++;
							if(a[6][1]==i1 && a[6][2]==i2 && a[6][3]!=i3 && a[6][4]!=i4 && a[6][5]==i5)	if((a[6][3]+10-i3)%10==(a[6][4]+10-i4)%10) sum++;
							if(a[6][1]==i1 && a[6][2]==i2 && a[6][3]==i3 && a[6][4]!=i4 && a[6][5]!=i5)	if((a[6][4]+10-i4)%10==(a[6][5]+10-i5)%10) sum++;
						}
						if(n>=7){
							if(a[7][1]!=i1 && a[7][2]==i2 && a[7][3]==i3 && a[7][4]==i4 && a[7][5]==i5) sum++;
							if(a[7][1]==i1 && a[7][2]!=i2 && a[7][3]==i3 && a[7][4]==i4 && a[7][5]==i5) sum++;
							if(a[7][1]==i1 && a[7][2]==i2 && a[7][3]!=i3 && a[7][4]==i4 && a[7][5]==i5) sum++;
							if(a[7][1]==i1 && a[7][2]==i2 && a[7][3]==i3 && a[7][4]!=i4 && a[7][5]==i5) sum++;
							if(a[7][1]==i1 && a[7][2]==i2 && a[7][3]==i3 && a[7][4]==i4 && a[7][5]!=i5)	sum++;
							if(a[7][1]!=i1 && a[7][2]!=i2 && a[7][3]==i3 && a[7][4]==i4 && a[7][5]==i5)	if((a[7][1]+10-i1)%10==(a[7][2]+10-i2)%10) sum++;
							if(a[7][1]==i1 && a[7][2]!=i2 && a[7][3]!=i3 && a[7][4]==i4 && a[7][5]==i5)	if((a[7][3]+10-i3)%10==(a[7][2]+10-i2)%10) sum++;
							if(a[7][1]==i1 && a[7][2]==i2 && a[7][3]!=i3 && a[7][4]!=i4 && a[7][5]==i5)	if((a[7][3]+10-i3)%10==(a[7][4]+10-i4)%10) sum++;
							if(a[7][1]==i1 && a[7][2]==i2 && a[7][3]==i3 && a[7][4]!=i4 && a[7][5]!=i5)	if((a[7][4]+10-i4)%10==(a[7][5]+10-i5)%10) sum++;
						}
						if(n>=8){
							if(a[8][1]!=i1 && a[8][2]==i2 && a[8][3]==i3 && a[8][4]==i4 && a[8][5]==i5)	sum++;
							if(a[8][1]==i1 && a[8][2]!=i2 && a[8][3]==i3 && a[8][4]==i4 && a[8][5]==i5)	sum++;
							if(a[8][1]==i1 && a[8][2]==i2 && a[8][3]!=i3 && a[8][4]==i4 && a[8][5]==i5)	sum++;								
							if(a[8][1]==i1 && a[8][2]==i2 && a[8][3]==i3 && a[8][4]!=i4 && a[8][5]==i5)	sum++;
							if(a[8][1]==i1 && a[8][2]==i2 && a[8][3]==i3 && a[8][4]==i4 && a[8][5]!=i5)	sum++;
							if(a[8][1]!=i1 && a[8][2]!=i2 && a[8][3]==i3 && a[8][4]==i4 && a[8][5]==i5)	if((a[8][1]+10-i1)%10==(a[8][2]+10-i2)%10) sum++;
							if(a[8][1]==i1 && a[8][2]!=i2 && a[8][3]!=i3 && a[8][4]==i4 && a[8][5]==i5)	if((a[8][3]+10-i3)%10==(a[8][2]+10-i2)%10) sum++;
							if(a[8][1]==i1 && a[8][2]==i2 && a[8][3]!=i3 && a[8][4]!=i4 && a[8][5]==i5)	if((a[8][3]+10-i3)%10==(a[8][4]+10-i4)%10) sum++;
							if(a[8][1]==i1 && a[8][2]==i2 && a[8][3]==i3 && a[8][4]!=i4 && a[8][5]!=i5)	if((a[8][4]+10-i4)%10==(a[8][5]+10-i5)%10) sum++;
						}
						if(sum==n){
							ans++;
						}
					}
				}
			}
		}
	}
	cout<<ans;
	return 0;
}

1 条评论

  • 1