今天看到一道九宫格,就是手机手势密码的题,题目大概是这样的:
1、如果只设置2位密码,有多少种满足的密码,密码不能穿越,比如1 3之间穿过2,这是不允许的;2、如果变成N*M格,判断一个2位密码是否是满足要求的密码(要求同1),
3、如果设置密码位数为9位,有多少种合适的密码,给出算法思路,并给出伪代码。
我的想法是这样的:
先检测当前位置在哪,再穷举所有移动记录次数。
1、3*4+5*4+1*8=40.
2、可以用一个N*M的数组保存1~N*M的值,然后看两位密码是否接触...
3、实在没想到什么让自己觉得很好的思路...
各位大神看看除了我这个思路外还有什么更高效的方法吗?
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.