bzoj1331: 魔板
来源:互联网 发布:php网页爬虫 编辑:程序博客网 时间:2024/06/05 19:59
传送门
直接大力广搜出奇迹。
不需要任何优化
#include<bits/stdc++.h>using namespace std;map<int,int> mp;int a[10],b[10],q[100005];int x,y;int cal(int *a){ int s=0; for (int i=0;i<8;i++) s=s*10+a[i]; return s;}void get(int x,int *a){ for (int i=7;i>=0;i--) a[i]=x%10,x/=10; }int main(){ for (int i=0;i<8;i++) scanf("%d",&a[i]); x=cal(a); mp[x]=1; int h=0,t=1; q[1]=x; while (h!=t){ x=q[++h]; get(x,a); memcpy(b,a,sizeof(b)); for (int i=0;i<4;i++) swap(b[i],b[7-i]); y=cal(b); if (!mp[y]) mp[y]=mp[x]+1,q[++t]=y; for (int i=0;i<4;i++) b[(i+3)%4]=a[i],b[(i+1)%4+4]=a[i+4]; y=cal(b); if (!mp[y]) mp[y]=mp[x]+1,q[++t]=y; memcpy(b,a,sizeof(b)); swap(b[2],b[5]); swap(b[5],b[6]); swap(b[6],b[1]); y=cal(b); if (!mp[y]) mp[y]=mp[x]+1,q[++t]=y; } for (int i=0;i<8;i++) a[i]=i+1; printf("%d",mp[cal(a)]-1);}
阅读全文
0 0
- bzoj1331: 魔板
- 魔板
- 魔板
- 7.5 魔板
- sicily1151魔板
- 1151. 魔板
- sicily1511 魔板
- sicily1150 & 魔板
- 1151. 魔板
- 1151 魔板
- 魔板[S]
- 1692 魔板
- Sicily 1151. 魔板
- HDU 1430 魔板 搜索
- 1151. 魔板[Speical judge]
- Sicily 1151. 魔板
- [sicily online]1151. 魔板
- 1515.魔板C
- java学习整理20170728
- 信号灯集详细使用说明
- 比较器与类的成员函数
- 【拓扑排序+LCA构造Dominator Tree】BZOJ2815 [ZJOI2012]灾难
- C语言的编译与链接
- bzoj1331: 魔板
- 【技能篇】python读取文件、实体抽取
- [py]web框架本质-自动动手实现一个mvc框架
- 让指针不再困扰你
- C++容器---pair
- 将本地已有项目 添加到 git管理中去
- 死锁的学习笔记
- 【USACO】青铜莲花池[2]
- PHP小爬虫