国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

P1219 N皇后(位運(yùn)算&普通dfs)

2019-11-11 03:28:15
字體:
供稿:網(wǎng)友

題見洛谷

位運(yùn)算版(設(shè)計(jì)巧妙,需要回顧,加深理解)

#include<iostream>#include<cstdio>#include<cstring>#include<string>#include<algorithm>#include<vector>#include<queue>using namespace std;int a[20];int ans=0,uplimit,n;void PRint(){ for(int i=1;i<=n;i++) { int x=0;int y=a[i]; while(y) { y=y>>1; x++; } printf("%d ",x); } puts(""); }void dfs(int r,int ld,int rd){ if(r==uplimit){ ans++; if(ans<=3) print(); return; } int pos=uplimit & ~ (r|ld|rd); while(pos!=0) { int p=pos & (-pos);//pos=pos & (~pos+1); pos-=p; a[++a[0]]=p; dfs(r+p,(ld+p)<<1,(rd+p)>>1); a[a[0]]=0;a[0]--;//回溯 }}int main(){ scanf("%d",&n); uplimit=(1<<n)-1; dfs(0,0,0); printf("%d",ans); return 0;}

普通版

#include<iostream>#include<cstdio>#include<algorithm>#include<queue>#include<vector>#include<cstring>#include<string>#include<cmath>using namespace std;int n;int ans[100];int tot=0;int fa[100],fl[20],fb[100];void dfs(int k){ if(k>n){ if(tot<3){ for(int i=1;i<=n;i++) printf("%d ",ans[i]); printf("/n"); } tot++; } else { for(int i=1;i<=n;i++) if(fl[i]==0&&fa[i+k]==0&&fb[i-k+n]==0) { ans[k]=i; fl[i]=1; fa[i+k]=1; fb[i-k+n]=1; dfs(k+1); fl[i]=0; fa[i+k]=0; fb[i-k+n]=0; } }}int main(){ scanf("%d",&n); dfs(1); printf("%d",tot); return 0;}
發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 布尔津县| 信丰县| 东光县| 桓仁| 六盘水市| 德州市| 汉中市| 汝南县| 怀来县| 阳谷县| 阜康市| 宜兰县| 宁夏| 昭通市| 德州市| 大同县| 拜城县| 德保县| 淮安市| 仲巴县| 南平市| 修文县| 中卫市| 航空| 抚松县| 泰州市| 黄梅县| 上高县| 茌平县| 乳源| 旬阳县| 班戈县| 黔南| 尉氏县| 甘谷县| 左权县| 苍梧县| 于都县| 张家界市| 南靖县| 耿马|