#include using namespace std; #define rep(i,n) for(int i=0;i=0;i--) #define rng(i,c,n) for(int i=c;i #define _4c5UlRw ios::sync_with_stdio(0),cin.tie(0) typedef long long ll; typedef vector vi; typedef pair pii; void print(){cout<<'\n';} template void print(const h&v,const t&...u){cout<>a[i]; } map mp; auto dfs=[&](auto self,string s)->void{ mp[s]=1; rep(i,n){ string ne_s=s; rep(j,n){ int x=s[j]-'0'; x+=(a[i][j]-'0'); x%=10; ne_s[j]=x+'0'; } // print(ne_s); // continue; if(mp.find(ne_s)==mp.end()){ self(self,ne_s); } } }; rep(i,n){ dfs(dfs,a[i]); } // for(auto p:mp){ // print(p.fi); // } print(sz(mp)); } signed main(){ _4c5UlRw; slv(); }