zoukankan      html  css  js  c++  java
  • 靶形数独

    我终于AC了!;

    毒瘤卡常题

    #pragma GCC optimize(1)
    #pragma GCC optimize(2)
    #pragma GCC optimize(3)
    #pragma GCC optimize("Ofast")
    #pragma GCC optimize("inline")
    #pragma GCC optimize("-fgcse")
    #pragma GCC optimize("-fgcse-lm")
    #pragma GCC optimize("-fipa-sra")
    #pragma GCC optimize("-ftree-pre")
    #pragma GCC optimize("-ftree-vrp")
    #pragma GCC optimize("-fpeephole2")
    #pragma GCC optimize("-ffast-math")
    #pragma GCC optimize("-fsched-spec")
    #pragma GCC optimize("unroll-loops")
    #pragma GCC optimize("-falign-jumps")
    #pragma GCC optimize("-falign-loops")
    #pragma GCC optimize("-falign-labels")
    #pragma GCC optimize("-fdevirtualize")
    #pragma GCC optimize("-fcaller-saves")
    #pragma GCC optimize("-fcrossjumping")
    #pragma GCC optimize("-fthread-jumps")
    #pragma GCC optimize("-funroll-loops")
    #pragma GCC optimize("-fwhole-program")
    #pragma GCC optimize("-freorder-blocks")
    #pragma GCC optimize("-fschedule-insns")
    #pragma GCC optimize("inline-functions")
    #pragma GCC optimize("-ftree-tail-merge")
    #pragma GCC optimize("-fschedule-insns2")
    #pragma GCC optimize("-fstrict-aliasing")
    #pragma GCC optimize("-fstrict-overflow")
    #pragma GCC optimize("-falign-functions")
    #pragma GCC optimize("-fcse-skip-blocks")
    #pragma GCC optimize("-fcse-follow-jumps")
    #pragma GCC optimize("-fsched-interblock")
    #pragma GCC optimize("-fpartial-inlining")
    #pragma GCC optimize("no-stack-protector")
    #pragma GCC optimize("-freorder-functions")
    #pragma GCC optimize("-findirect-inlining")
    #pragma GCC optimize("-fhoist-adjacent-loads")
    #pragma GCC optimize("-frerun-cse-after-loop")
    #pragma GCC optimize("inline-small-functions")
    #pragma GCC optimize("-finline-small-functions")
    #pragma GCC optimize("-ftree-switch-conversion")
    #pragma GCC optimize("-foptimize-sibling-calls")
    #pragma GCC optimize("-fexpensive-optimizations")
    #pragma GCC optimize("-funsafe-loop-optimizations")
    #pragma GCC optimize("inline-functions-called-once")
    #pragma GCC optimize("-fdelete-null-pointer-checks")
    #include<iostream>
    #include<cstring>
    #include<cstdio>
    using namespace std;
    int shudu[10][10]={},tot=-2,ans=-1,maxx=0,bb=0;
    bool ishudu[10][10]={};
    bool nine[10][10]={},h[10][10]={},l[10][10]={};
    int fen[10][10]={{0,0,0,0,0,0,0,0,0,0},
                    {0,6,6,6,6,6,6,6,6,6},
                    {0,6,7,7,7,7,7,7,7,6},
                    {0,6,7,8,8,8,8,8,7,6},
                    {0,6,7,8,9,9,9,8,7,6},    
                    {0,6,7,8,9,10,9,8,7,6},
                    {0,6,7,8,9,9,9,8,7,6},
                    {0,6,7,8,8,8,8,8,7,6},
                    {0,6,7,7,7,7,7,7,7,6},
                    {0,6,6,6,6,6,6,6,6,6}};
    inline int ninth(int i,int j) 
    {
        if(i<=3&&j<=3) return 1;
        if(i<=3&&j<=6) return 2;
        if(i<=3) return 3;
        if(i<=6&&j<=3) return 4;
        if(i<=6&&j<=6) return 5;
        if(i<=6) return 6;
        if(j<=3) return 7;
        if(j<=6) return 8;
        return 9;
    }
    inline void input()
    {
        for(register int i=1;i<=9;i++)
            for(register int j=1;j<=9;j++)
                {
                cin>>shudu[i][j];
                if(shudu[i][j]){
                nine[ninth(i,j)][shudu[i][j]]=0;
                ishudu[i][j]=0;h[i][shudu[i][j]]=0;l[j][shudu[i][j]]=0;
                }}
    }
    inline void so(int e)
    {
        if(e==0)
        {
            tot=0;
            for(register int i=1;i<=9;i++)
            for(register int j=1;j<=9;j++)
            tot+=shudu[i][j]*fen[i][j];
            if(tot>ans)
            ans=tot;
            return;
        }
        int k=(e-1)/9+1;
        int o=(e-1)%9+1;
        int n=ninth(k,o);
        if(shudu[k][o]>0)so(e-1);
        else 
        {
            for(register int i=1;i<=9;i++)
             if(h[k][i]&&l[o][i]&&nine[n][i])
             {
                shudu[k][o]=i;
                h[k][i]=0;
                l[o][i]=0;
                nine[n][i]=0;
                so(e-1);
                shudu[k][o]=0;
                h[k][i]=1;
                l[o][i]=1;
                nine[n][i]=1;
             }
        }
    }
    int main()
    {
        ios::sync_with_stdio(false);
        for(int i=0;i<10;i++)
        for(int j=0;j<10;j++)
        h[i][j]=l[i][j]=nine[i][j]=1;
        input();
        so(81);
        cout<<ans<<endl;
    }
    View Code

    卡常圣物

    #pragma GCC optimize(1)
    #pragma GCC optimize(2)
    #pragma GCC optimize(3)
    #pragma GCC optimize("Ofast")
    #pragma GCC optimize("inline")
    #pragma GCC optimize("-fgcse")
    #pragma GCC optimize("-fgcse-lm")
    #pragma GCC optimize("-fipa-sra")
    #pragma GCC optimize("-ftree-pre")
    #pragma GCC optimize("-ftree-vrp")
    #pragma GCC optimize("-fpeephole2")
    #pragma GCC optimize("-ffast-math")
    #pragma GCC optimize("-fsched-spec")
    #pragma GCC optimize("unroll-loops")
    #pragma GCC optimize("-falign-jumps")
    #pragma GCC optimize("-falign-loops")
    #pragma GCC optimize("-falign-labels")
    #pragma GCC optimize("-fdevirtualize")
    #pragma GCC optimize("-fcaller-saves")
    #pragma GCC optimize("-fcrossjumping")
    #pragma GCC optimize("-fthread-jumps")
    #pragma GCC optimize("-funroll-loops")
    #pragma GCC optimize("-fwhole-program")
    #pragma GCC optimize("-freorder-blocks")
    #pragma GCC optimize("-fschedule-insns")
    #pragma GCC optimize("inline-functions")
    #pragma GCC optimize("-ftree-tail-merge")
    #pragma GCC optimize("-fschedule-insns2")
    #pragma GCC optimize("-fstrict-aliasing")
    #pragma GCC optimize("-fstrict-overflow")
    #pragma GCC optimize("-falign-functions")
    #pragma GCC optimize("-fcse-skip-blocks")
    #pragma GCC optimize("-fcse-follow-jumps")
    #pragma GCC optimize("-fsched-interblock")
    #pragma GCC optimize("-fpartial-inlining")
    #pragma GCC optimize("no-stack-protector")
    #pragma GCC optimize("-freorder-functions")
    #pragma GCC optimize("-findirect-inlining")
    #pragma GCC optimize("-fhoist-adjacent-loads")
    #pragma GCC optimize("-frerun-cse-after-loop")
    #pragma GCC optimize("inline-small-functions")
    #pragma GCC optimize("-finline-small-functions")
    #pragma GCC optimize("-ftree-switch-conversion")
    #pragma GCC optimize("-foptimize-sibling-calls")
    #pragma GCC optimize("-fexpensive-optimizations")
    #pragma GCC optimize("-funsafe-loop-optimizations")
    #pragma GCC optimize("inline-functions-called-once")
    #pragma GCC optimize("-fdelete-null-pointer-checks")
    View Code
  • 相关阅读:
    gan研究思路
    官方文档的学习
    构建Pytorch虚拟环境
    桌面显示【我的电脑】
    【VUE】计数器模块
    【品优购】字体图标定位的做法
    029垃圾分代回收机制
    03特殊for语句
    28包 package
    jdk特性
  • 原文地址:https://www.cnblogs.com/Frost-Delay/p/ba_xing_shu_du.html
Copyright © 2011-2022 走看看