提交时间:2023-01-11 15:56:15

运行 ID: 17585

#include <bits/stdc++.h> using namespace std; int m[12][12],x1[12],y_1[12],x2[12],y2[12],ans[12]; int main(){ int n; char x; memset(x1,0x3f,sizeof x1); memset(y_1,0x3f,sizeof y_1); cin>>n; for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ cin>>x; m[i][j]=x-'0'; x1[x-'0']=min(x1[x-'0'],i); y_1[x-'0']=min(y_1[x-'0'],j); x2[x-'0']=max(x2[x-'0'],i); y2[x-'0']=max(y2[x-'0'],j); ans[x-'0']=1; } } for(int i=1;i<10;i++){ for(int j=x1[i];j<=x2[i];j++){ for(int k=y_1[i];k<=y2[i];k++){ if(m[j][k]!=i)ans[m[j][k]]=0; } } } int t=0; for(int i=1;i<10;i++){ t+=ans[i]; } cout<<t; return 0; }