因为懒得改第一次写的代码,于是就出现了这种玄学的优化
(cz=count_zero)
for(int i=1; i<=9; i++)
{
for(int j=1; j<=9; j++)
{
scanf("%d", &a[i][j]);
visx[i][a[i][j]]=1, visy[j][a[i][j]]=1, viss[t[i][j]][a[i][j]]=1;
if(!a[i][j]) cz[i]++;
}
}
cz[1] += cz[2]+cz[3]+cz[4];
cz[9] += cz[8]+cz[7]+cz[6];
if(cz[1]>cz[9]) tag=-1, tag2=0, dfs(81, 0);
else tag=1, tag2=82, dfs(1, 0);
大致意思就是从1向82搜和从81向0搜之间做选择
然后过了。。。3700ms。。。