【noi2005】智慧珠游戏
来源:互联网 发布:爱奇艺软件没有弹幕 编辑:程序博客网 时间:2024/04/20 01:59
noi2005的题不得不说太重口味了,三道神题(维护数列、智慧珠游戏、月下柠檬树)想AC?那好,交出至少5KB的程序吧,怪不得300+就有金牌了。
题目大意很简单,类似于七巧板,你有12种骨牌,其中3联骨牌1个,4联骨牌3个,5联骨牌8个,现在给你个残局,要求你用剩下的骨牌填满棋盘,棋盘是个10*10的三角形。
我想应该没有什么牛人用状态压缩DP做出来了吧?那好,这就只能搜索了。
开始是不想做这道题的,但是看到STD如此之慢(GHY一共是要1S+),徒生出虐STD的想法,可能知道的人不多,解决覆盖类问题有一神级算法,叫Dancing Links,专门为‘精确覆盖’设计的超级搜索。
首先说说精确覆盖:给你一个0-1矩阵,要你选出一些行,使得这些行的每一列有且仅有一个1。
关于DLX可以看相关论文,现在的目的是怎么把它转换为精确覆盖模型。
在这道题中可知有2个覆盖条件:
1.每块骨牌只能用一次,且不能不用;
2.对于每个区域,骨牌不可以重复覆盖,也就是这个区域只能被一块骨牌覆盖,且不能不覆盖;
这两个条件都和精确覆盖的条件:每行有且仅有一个1很相似,那么我们就可构造了。
列分别为所有没有放骨牌的格子和没有被用到的骨牌,行为每种骨牌的不同放置方案。
非常可观的速度:
嗯,感觉这个常量表还是打的挺漂亮的。
- 【noi2005】智慧珠游戏
- [NOI2005]智慧珠游戏
- 【搜索】【NOI2005】智慧珠游戏
- [DLX] [NOI2005] 智慧珠游戏
- 【NOI2005】【DLX】智慧珠游戏(code)
- BZOJ1501 (NOI2005 智慧珠游戏)
- BZOJ 1501([NOI2005]智慧珠游戏-DLX)
- BZOJ 1501 NOI2005 智慧珠游戏 Dancing-Links(DLX)
- 【NOI2005】智慧珠游戏,DLX的NOIP坎关。
- Noi-05智慧珠游戏
- NOI 2005 智慧珠游戏 zhzyx
- NOI2005
- 智慧
- noi2005 维护序列。 splay
- 【noi2005】维护数列
- NOI2005瑰丽的华尔兹
- 1500: [NOI2005]维修数列
- [NOI2005] 维护数列 sequence
- Keil uVision4与ISIS 7 Professional(Proteus Version 7.7)成功实现联调
- 暴雨袭城!
- Enterprise Architect 8.0 注册码
- socket编程(二)
- __gxx_personality_v0错误原因
- 【noi2005】智慧珠游戏
- 第六章【迭代与递归的区别】
- 对象比较: "==" "equals()" "hashCode()"
- 找高质量链接最有效的方法
- HttpClient usage
- JAVA WEB过滤器Filter使用总结
- 卓越企业家个性特征(摘录)
- tcp的效率性和公平性
- 网站的索引