首页
排行榜
发现
动态
云游戏
论坛
创作者中心
发布动态
详情
评价
495
论坛
Android 资料
iOS 资料
bdpq
官方入驻
9.3
预约
2411
关注
11 万
厂商
睡神飞工作室
游戏介绍
上次更新于2016/10/30
烧脑
休闲
益智
独立游戏
简介
睡神飞烧脑系列初代作品,专虐高智商! 苹果【Challenge your brain】专题推荐的全球28个烧脑游戏之一。 “bdpq” 是我花了不少时间创作的一个原创智力游戏。 玩法极其简单,谁都能在几秒钟内学会怎么玩。 但想要还原所有字母却非常非常难,一些人可能好几十天也解不出来个三阶模式。 只有百分之一的人能还原五阶模式。 【游戏玩法】 点击一个字母来选中它所在行与列的所有字母, 左右或上下滑动可将bdpq这四个字母翻转成它们中任何一个字母, 将所有不同字母变成相同的一种字母就赢了。 这个游戏去年五月发布,到现在为止已经有大概五种通用解法了。 【题外话】 作为一个外行的独立开发者,自己摸爬滚打开发游戏已经三年了。在这两年里做了十几款游戏,始终没有自己特别满意的。但一路走来始终记得的是当初为何要进入这行,就是想做出原创的好游戏,上一款游戏花了很多时间心血但却是个失败之作,于是想着试试走极简路线,从游戏核心玩法上作出创新,设计出一款简单又耐玩的游戏给大家,希望大家能喜欢。官方QQ群611217770 睡神飞工作室
供应商 longyufeng
开发者的话
这个游戏是睡神我进入烧脑系列游戏开发后的第一款作品,看似简单却很难,看似很难却又意外简单,目前已知五种解法,你能找到另外的解法么?官方QQ群611217770
评价
共 495 条
去评价
蓝白
玩过
写了个程序把游戏秒了……
感谢各位玩家之前的评价,我是比较膜拜各位自己总结出规律的,由于我比较菜,只能写写代码了。
下面是程序代码,比较暴力……
如大家所说,上下与左右是不相关的,故此程序只解其中一种状态
代码仍有许多可优化之处,还请大家谅解
---------我是分割线----------
#include<iostream>
#include<cmath>
#define N 25 //对应5阶
using namespace std;
bool q[33554432];//数组规模为2^25,修改此处与N的定义值可解出更高阶
unsigned short num(int m,int n) {
unsigned short p = m % 2;
while (n > 0) {
m /= 2;
p = m % 2;
n--;
}
return p;
}
int pow2(int n) {
int output = 1;
while (n > 0) {
output *= 2;
n--;
}
return output;
}
int flap(int m, int n) {
int a = (int)sqrt(N);
int r = n / a;
int c = n - a*r;
m += pow2(n)*(1 - 2 * num(m, n));
for (int i = 0; i < a; i++)m += pow2(r*a + i)*(1 - 2 * num(m, r*a + i));
for (int i = 0; i < a; i++)m += pow2(c + i*a)*(1 - 2 * num(m, c + i*a));
return m;
}
void outputmap(int m) {
int a = (int)sqrt(N);
cout << "--------" << endl;
for (int i = 0; i < N; i++) {
cout << m % 2;
m /= 2;
if (i%a == a - 1)cout << endl;
}
}
void dfs(int m, int c) {
if (q[m])return;
else q[m] = true;
if (m == 0 || m == pow2(N) - 1) {
outputmap(c); return;
}
for (int i = 0; i < N; i++) {
if (num(c, i) == 0)dfs(flap(m, i), c + pow2(i));
}
}
int main() {
int map = 0;
for (int i = 0; i < N; i++) {
char p;
cin >> p;
map += (p - '0')*pow2(i);
}
dfs(map, 0);
return 0;
}
输入格式:
对于n阶,输入n行,每行n个字符
字符为数字0或1,对应翻转的两种状态
输出格式:
n行,每行n个字符;
字符0代表不翻动此位置的卡片;
字符1代表翻动此位置的卡片。
(当然,大家可根据0与1的多寡决定何者为所需翻动的卡片)
输入范例:
01000
11111
01000
01000
01000
输出范例:
00000
01000
00000
00000
评价:
UI简洁好看。
玩法可玩性高,理论上,n阶可以有
(2^(n^2)-2)*2^(n^2)
种关卡(未排除对称、旋转重回关卡)
bdpq这些放一起实在是太像了,玩着有点眼花2333
如果出个diy卡片颜色(或皮肤)什么的可能会舒服些2333
由于我懒+菜,就当作锻炼写代码啦_(:3」∠)_
2017/6/16
来自 小米5S
Sir pneumonia
游戏时长 98 分钟
值得一玩。模式稍微有点枯燥,最多封顶5*5,缺少那么点兴奋感,不过也还可以了。似乎没什么广告大赞!!我研究了一下,毫无头绪的话可以来看看。(已更新方法,无脑流氓法直接见分割线更新的部分,前面的可作参考资料)(还是不懂的先看最后例子)
◆⒈这游戏的操作有两个自由度,也就是二维的,分别是纵和横,可以独立地来操作这两个维度。每个自由度有两个态,分别是上下与左右:具体地,也就是在横向变换上,bp属于一个态(看字母的形状),qd属于另一个态;同理,对纵向变换来说,bd属于一个态,qp算另一个态。我们可以独立对两个方向分别进行操作,两个方向互不影响。
◆⒉当玩到后面矩阵变大了就没法瞎玩了,这对应物理上的熵增原理,即系统的无序度总是倾向于变大的。那么要达成目标我们应该想办法让系统变得有序,而有序的特征便是对称性!要从对称的角度来想办法。具体地,我是这么考虑的:根据前面第一条,我们可以一次只考虑一个方向的整理,完成之后再搞定另一个方向。首先通过几个直观的变换将各个元素尽可能多地变成某一个态(如:4*4的模式下,考虑横向变换,开局是8个b/p态,8个q/d态。我们考虑把它们初步变换成尽量多的d/q态,那么选择一个元素,如果由它展开的十字形区域包含4、5、6或7个的p/b态,我们就就行一次左右变换,这样就有了更多的d/q态。如上操作直到极限)。这样之后就比较清爽了,剩下不多的p/d态(上面例子里面的情形)往往有几个是对称的,考虑以它们为线索进行一些对称的操作,一部分一部分地考虑,慢慢就能搞成同一个态了。
◆3.对称操作举例:同样是上面所述的4*4情形中。a.对某一行(列)全部进行左右(上下)变换,可以使除这行(列)的元素全部翻转;b.画个坐标系,对(1,4),(1,3),(1,2),(4,4),(4,3),(4,2)全部进行左右变换,可以使(1,1)、(4,1)发生翻转。等等。聪明的人可能已经发现了,这个操作的效果和矩阵具体维数也有关系,以上例子只适用4*4情形,5*5要重新找规律,不过不是太难找的。
前来提供一种套路,希望能给一头雾水的小伙伴一些帮助。物理狗用了一点专业名词,我感觉应该写得还算清楚吧,看不懂可以问我。
我按这个套路走感觉有点像做中级数独那种感觉,可以做出来不过有点小辛苦,玩久了有点小枯燥,所以四星。
============日常更新(流氓方法)=========
!!!!!发现一种流氓法,根据第一条,再用一点记忆力就行了:把所有的相同态一次性进行相应自由度的操作就能完成这个自由度的整理了。比如把初始态里面所有b/p的位置记住,对这些位置都进行一次左右操作,这样横向就整理好了。纵向同理。这个我在5*5里面试了几次都成功了,不造有没有例外。(具体的例子我在最后加上了)
●这个我今天在考虑不对称性的来源,原理上讲,所有的不对称性都来源于那些不同的元素,那么对它们同时进行操作,就是最合适的对应于当前情形的“对称”操作了。(获得终极奥义:哪些不对点哪些)
●今天又试了下,好像有的矩阵用这方法一次整理不出来,不过会变得简单很多。懒得推敲的话重复使用流氓法就好了。
●========再来更新加个栗子===========
bppp
pppp
bppp
pppp
把当前所有b的位置(1,4)(1,2)进行上下操作即可。若一次没有成功则重复该过程。
具体过程:
一次变换后
bbbb
pppp
bbbb
pppp
根据原理,接着把第一、三行全部上下变换
得到
pppp
pppp
pppp
pppp
完成。当然,选择p而不是b作为变换对象也是可以的。
2017/1/19
来自 索尼Xperia Z5 Compact
官方
睡神飞工作室
:
相当好,我按照你这个攻略已经成功突破第一关了,你真是个小机灵鬼
艾露迪
玩过
睡神飞……嗯
熟悉圈里情况的人应该不用再额外说什么了
这个名字就基本代表质量了
烧脑狂魔,沉迷烧脑疯狂超频
小游戏,主要还是休闲益智
当然要是不小心把自己玩抑郁了
那就玩几局数独调剂一下吧23333
这版基本没什么大问题
不像当初b不b出来时候……emmmm
睡神飞
让智商飞一会~
期待你带来更加出色,带有更多挑战的作品
(ps:其实我是想给4.5⭐️的2333)
2019/8/25
来自 华为荣耀V9
黑凤梨
玩过
游戏可以说非常的硬核了,刚刚到手的时候我手足无措,上面的英语也是一知半解,最后还是在taptap找到了玩法,简单的翻了几下就立即懂了,但是正如作者所说“上手极其容易但是想要通关还是很困难的”,简单摸索和乱翻了一会之后仍然没找到诀窍,仅仅第一关就花了我五分钟,无奈我太菜而且游戏太强(捂脸
刚刚拿到的时候:“不就是个小益智游戏,看我分分钟通关给你看”结果就仅仅证明了我是个傻子,摸索了两小时之后发现我的脑子可能不够用,虽然这个只有一面但比三阶魔方可困难多了,简直烧脑,脑袋就像被套了紧箍咒的孙悟空一样痛…
不断地琢磨下,我终于找到了窍门,就拿3*3的来打比方,首先你要从中间一个入手,将最中间一格定型,然后从最角落的四格开始翻,接下来尽量将周围的bdpq这些字母移成同一字母,然后将中间的十字阵也移动成同一方向这样就可能可以通关!
每增加一层难度就成指数增长,到了4*4这一关,我真的是绞尽脑汁来通关,这关着实太难了,花了我快一个小时,我甚至还专门拿了笔记出来记录这些bdpq的方向和位移路线,最后通关的时候我真的是有一种要成佛的感觉,到了最后5*5那一关我真的是感觉到人类的能力是有限的(再次捂脸
2019/8/28
论坛
夏洛克聂
2016/12/31
bdpq
简单攻略(无需公式,轻松解决任意阶方阵)
【二阶】 首先,任意初始状态,自选两个对角并转成一样: 然后使用左下角将两个同向的块的转成右上角的状态: 最后将三个同向的块转成最后一块的样子 【三阶】 如图,三阶由一个二阶和一个拐角组成,只要先在里面找一个二阶按上面的方法完成,拐角就会自动同向,最后把拐角转到二阶的方向就完成了: 【四阶及以上】 四阶就无法使用三阶的方法了,四阶及以上的方阵的诀窍就是:成对操作。 /在某一行里选一对方块进行同样的
5
bdpq
2018/11/21
bdpq
《bdpq》新版《b不b》已经发布!To b or not to b,这是个难题。
一些老玩家知道,我两年多年做了一个叫《bdpq》的烧脑游戏,由于入门太难,知道解法后又变得太简单,所以玩起来是很不友好的,所以我又做了个新版,争取做到,入门极简,后期极难,有大量关卡可供尝试。游戏刚刚发布,希望大家头发安好,阿门。 新游戏地址: 已经发布!!! 另外一堆新游戏正在路上。
相关游戏
Imaginary Space
测试
9.4
烧脑
益智
几何
极限烧脑之旅
9.2
益智
烧脑
休闲
匠木
9.0
传统文化
独立游戏
国风
彩色水排序大师
测试
5.7
休闲
扫雷F
测试
8.8
益智
竖屏
单机
全民数独
8.8
益智
烧脑
单机
记忆大师
测试
8.6
单机
休闲
益智
墨盘
9.5
益智
水墨
解谜
同一个世界
8.3
独立游戏
唯美
解谜
六边形拼图
8.9
益智
休闲
单机
剑冢
9.3
策略
塔防
休闲
普通的大冒险
6.9
点击
冒险
休闲
我的乐消除
测试
5.3
休闲
方块消除达人
7.7
极简
消除
漫画手绘簿
测试
3.8
休闲
论坛