AC

lzhh_lzhh26  •  1个月前


#include<bits/stdc++.h>
using namespace std;
int dfs[10][10][10][10][10];
int main(){
	int n;
	cin>>n;
	for(int i=0;i<n;i++){
		int a,b,c,d,e;		//最终状态 
		cin>>a>>b>>c>>d>>e;
		for(int m=1;m<=10;m++){		//转m位 
			dfs[(a+m)%10][b][c][d][e]++;
			dfs[a][(b+m)%10][c][d][e]++;
			dfs[a][b][(c+m)%10][d][e]++;
			dfs[a][b][c][(d+m)%10][e]++;
			dfs[a][b][c][d][(e+m)%10]++;
			//一个 
			dfs[(a+m)%10][(b+m)%10][c][d][e]++;
			dfs[a][(b+m)%10][(c+m)%10][d][e]++;
			dfs[a][b][(c+m)%10][(d+m)%10][e]++;
			dfs[a][b][c][(d+m)%10][(e+m)%10]++;
			//两个 
		}
	}
	int ans=0;
	for(int a=0;a<=9;a++){
		for(int b=0;b<=9;b++){
			for(int c=0;c<=9;c++){
				for(int d=0;d<=9;d++){
					for(int e=0;e<=9;e++){
						if(dfs[a][b][c][d][e]==n){
							ans++;
						}	
					}
				}
			}
		}
	}
	cout<<ans<<endl;
	return 0;
}

评论:

请先登录,才能进行评论