1756八皇后 二进制优化

来源:互联网 发布:edi网络 编辑:程序博客网 时间:2024/06/05 12:49
#include<bits/stdc++.h>using namespace std;int lim=(1<<8)-1;int p;int t=1,r[94];int dfs(int row,int ld,int rd){if(row==lim) {          t++;        r[t]=r[t-1];    }else{int pos=lim & ~(row|ld|rd);while(pos){p=pos&(-pos);pos-=p;int q=p,ans=0;while(q){ans++;q=q>>1;}r[t]=r[t]*10+9-ans;dfs(row+p,(ld+p)<<1,(rd+p)>>1);r[t]=r[t]/10;}}}int main(){dfs(0,0,0);int n;cin>>n;for(int i=1;i<=n;i++){int n0;cin>>n0;cout<<r[93-n0];}}

0 0
原创粉丝点击