求助一道dfs题
  • 板块学术版
  • 楼主BLX32M_10
  • 当前回复4
  • 已保存回复4
  • 发布时间2023/3/3 20:23
  • 上次更新2023/10/23 23:14:24
查看原帖
求助一道dfs题
529247
BLX32M_10楼主2023/3/3 20:23

nn 个环,拆装这些环的规则:

第一个环可以随意拆装

第二个只有在第一环已装上时可以拆装,第三个只有在第二个环已装上且第一个环已拆下时可以拆装。

ii 个环只有在第 i1i-1 环已装上,且第 i2i-2、第 i3i-3、…,第 1 环都拆下时可以装拆。

现输入 nn,表示这 nn 个已经装上的环,现在输出拆下这 nn个环的最简单过程。

输出方法是每个状态用 0011 来表示,00 表示对应位置上的环已卸下,1表示对应位置上的环已装上,输出每拆装一个环时候的状态,初始状态也要输出。

例如,输入n=2,则输出:

11
10
00

本人读懂题了,大体思路就是首先满足前 n2n-2 个数全为 00,第 n1n-1 个数为 11,使得第 nn 个环拆下,然后满足前 n1n-1 个数全为 11(这个手模可以得到);再满足前 n3n-3 个数全为 00,第 n2n-2 个数为 11,使得第 n1n-1 个环拆下……

目前想到的就是设置一个 bool 状态(将前面转化为 00 和转化为 11),但是实现到一半搞不懂咋搜了

如有错误请指出,谢谢大佬们的帮助

2023/3/3 20:23
加载中...