Hash
Hash
一、Hash表
# include <bits/stdc++.h>
using namespace std;
const int MAXN=1e5+100;
const int mod=99991;
int tot=0;
int snow[MAXN][10],a[10];
int head[MAXN],nextt[MAXN],sum[10],mul[10];
int cal()
{
    memset(sum,0,sizeof(sum));
    memset(mul,1,sizeof(mul));
    for(int i=1;i<=6;i++){
        if(i==1) sum[i]=a[i]%mod,mul[i]=a[i]%mod;
        else sum[i]=(sum[i-1]+a[i])%mod,mul[i]=(mul[i-1]*a[i])%mod;
    }
    return sum[6];
}
int same(int id)
{
    int eq=1;
    for(int k=1;k<=6;k++){
        for(int i=1;i<=6;i++){
            eq=1;
            for(int j=1;j<=6;j++){
                if(snow[id][(k+j)%6+1]!=a[(i+j)%6+1]) eq=0;
            }
            if(eq) return 1;
            eq=1;
            for(int j=1;j<= 
                     
                    
                