1 手机出现解析错误图案错误怎么回事

手机的九宫格图案解锁总共能绘出多少种图案?
需要满足的要求有:至少经过四个点;不能重复经过同一个点;路径上的中间点不能跳过(如从1到3一定会经过2);如果中间的点是之前已经用过的,那么这个点就可以被跳过(如213,因为2已经被用过,1就可以越过2与3连接,132是不允许的)。
按投票排序
from itertools import chain, permutations
impossible = {'13': '2',
'46': '5',
'79': '8',
'17': '4',
'28': '5',
'39': '6',
'19': '5',
'37': '5',
'31': '2',
'64': '5',
'97': '8',
'71': '4',
'82': '5',
'93': '6',
'91': '5',
'73': '5'}
def counts():
iterlst = chain(*(permutations('', i) for i in range(4, 10)))
for i in iterlst:
stri = ''.join(i)
for k, v in impossible.items():
if k in stri and v not in stri[:stri.find(k)]:
count += 1
return count
print(counts())#389112
我用python写了段代码,先计算出所有大于四个数字的所有排列组合,然后从中剃除穿过中间那个数字的组合,剩下的既为符合要求的代码。例如13组合是不可能存在的,因为它会穿过2,19组合也不可能存在,因为它会穿过5,总共有16个这样的组合。但是假如中间这个数字已经用过了,是可以穿过的,比如213,2已经用过了,1是可以穿过2与3连接的。如此筛选以后,就得到正确答案389112了。
以下引用自果壳网:Android 的密码是 3 × 3 点阵中的一条路径,这条路径可以交叉,可以“走日字”,几乎是无所不能(只要不经过重复点),但却有一个例外:路径不允许跳过途中必须要经过的点。例如, 如果从左上角的点连接到右上角的点,中间的那个点会被自动地加进路径里。但麻烦就麻烦在,这个规则本身也有一个值得注意的地方:如果中间的点是之前已经用过的,那么这个点就可以被跳过去了。我们不妨把点阵中的九个点分别用数字 1 到 9 编号。按照上述规则, 都是不合法的,但 2 则都是可行的。死理性派这下苦恼了,似乎五花八门的组合数学模型在这里都派不上用场。怎么办呢?别急,我们还有强大的计算机帮忙。下面,有请编辑最爱的数学软件 Mathematica 登场。首先,让我们生成所有 985 824 种没有限制的排列组合:再记下不能直接连接的点对:由此生成不合法的排列规则:从全部排列组合中删掉不合法的,便得到了所有可能的 Android 密码了:Android 密码一共有多少种可能性呢?让我们来看看:这样,我们就得到了一个准确的数字:在 Android 系统上一共有 389 112 种可能的密码,只占之前估计的密码数上限的 1/3 左右。
我来个R语言版本 :)我的计算过程如下:(一)确定手势密码的规则a)
按1至9编码,则必须要4至9个数字。b)
不能跳过中间的数字。不合法的情况:c)
当中间的那个点是之前用过的,则这个点可以被跳过去。(二)根据规则用R语言编程计算。1)
首先,根据规则a)计算所有排列的上限。即:9×8×7×…×1+9×8×7×…×2+?+9×8×7×6=9856242)
根据规则b),构造不合法的情况集合。3)
结合规则b)和c),使用正则表达式函数,统计不合法的情况个数。4)
排除不合法的情况个数,最终得到总共的合法手势密码个数为:389112.我的R代码如下(R代码的效率有点低,运行耗时两个小时左右):#加载需要的包
library(stringr)
library(dplyr)
library(gtools)
#######################
#生成所有的排列组合上限
#共9×8×7...×1 + 9*8*7*...*2 + ...+ 9*8*7*6 =
for(i in 1:6){
sum &- sum+prod(i:9)
#######################
## 生成所有的候选排列组合
x &- c(1:9)
Permus &- list()
Permus&-lapply(9:4,function(i){
permutations(n = 9, r = i, v = x)
######################
# 把所有的排列情况矩阵转换成字符串集,并转换成一个字符串向量
matrix_to_string &- function(inmat){
apply(inmat,1,paste,collapse = "")
strings&-list()
strings&-lapply(Permus, matrix_to_string)
strings&-unlist(strings)
str(strings)
#####################
# 不合法的情况子集
Illegal&-c("13","46","79","17","28","39",
"19","37","31","64","97","71",
"82","93","91","73")
CrossNum&-as.character(c(2,5,8,4,5,6,5,5,2,5,8,4,5,6,5,5))
#####################
# 统计不合法的情况个数
for(i in 1:length(strings)){
for(j in 1:length(Illegal)){
IllegalCode&-str_locate(string = strings[i],pattern = Illegal[j]) %&%
if(!is.na(IllegalCode[1]) & (!str_detect((str_sub(string = strings[i],end = IllegalCode[1])),
CrossNum[j]))){
count &- count + 1
sum - count
用matlab写了几行算了下,答案是389112种。s = struct('end_points', {'13'; '31'; '46'; '64'; '79'; '97'; '17'; ...
'71'; '28'; '82'; '39'; '93'; '37'; '73'; '19'; '91'}, ...
'mid_point', {'2'; '2'; '5'; '5'; '8'; '8'; '4'; '4'; '5'; ...
'5'; '6'; '6'; '5'; '5'; '5'; '5'});
for i = 4:9
c = nchoosek('', i);
for j = 1:size(c, 1)
p = perms(c(j, :));
for k = 1:size(p, 1)
for l = 1:size(s, 1)
if ~isempty(strfind(p(k, :), s(l).end_points)) && ...
isempty(strfind(p(k, (1:(strfind(p(k, :), ...
s(l).end_points) - 1))), s(l).mid_point))
n = n + 1;
num = num + 1;
贴个c代码,轻拍#include &stdio.h&int res[];int cnt=0,t=0;int genarry(int*a,int n[9],int l,int s){
for(i=0;i&s;i++)res[cnt][i]=a[i-s];
for(i=0;i&9;i++){
if(n[i]==0)
genarry(a+1,n,l-1,s);
return 0;}int select(){
int taboo[16][2]={
{1,3},{3,1},
{4,6},{6,4},
{7,9},{9,7},
{1,7},{7,1},
{2,8},{8,2},
{3,9},{9,3},
{1,9},{9,1},
{3,7},{7,3}
for(i=0;i&i++){
int j,flag=0;
for(j=0;res[i][j+1]!=0&&!j++){
for(k=0;k&16&&!k++){
if(res[i][j]==taboo[k][0]&&res[i][j+1]==taboo[k][1]){
for(l=0;l&j;l++){
if(res[i][l]==(taboo[k][0]+res[i][j+1])/2)flag=0;
res[i][9]=-1;
return cnt-t;}int main(){
int a[9],n[9],i,
for(i=0;i&9;i++)n[i]=1;
for(i=4;i&10;i++)
genarry(a,n,i,i);
count=select();
printf("%d\n",count);
return 0;}把结果打出来随机选一个做解锁会不会安全一点
终于有机会见识了聪明的程序员们究竟是怎么一群人。 你们真棒!
我是来比谁的程序更简单的...
dfs代码,用标记数组标记不合法的情况,在所有的排列里面剔除不合法的情况,暴力枚举。#include&iostream&#include&cstring&int mark[10][10], vis[20];int num[20], ans = 0,void dfs(int cnt){
if(cnt &= 5)
for(int i = 1; i&=9; i++)
if(!vis[i])
if(mark[i][num[cnt-1]] && !vis[mark[i][num[cnt-1]]])
num[cnt] =
vis[i] = 1;
dfs(cnt+1);
vis[i] = 0;
}}int main(){
num[0] = 0;
memset(mark, 0, sizeof(mark));
mark[1][3] = 2, mark[1][7] = 4, mark[1][9] = 5;
mark[2][8] = 5, mark[3][7] = 5, mark[3][9] = 6;
mark[4][6] = 5, mark[7][9] = 8;
for(int i = 1; i&=9; i++)
for(int j = i+1; j&=9; j++)
mark[j][i] = mark[i][j];
memset(vis, 0, sizeof(vis));
cout&&ans&&
return 0;}是389112种
#include&stdio.h&
#define ABS(a) (((a)&=0)?(a):-(a))
#define HALF(a,b) ((a)%3 + (b)%3)/2 + 3*(((a)/3 + (b)/3)/2)
bool flags[9]={true,true,true,true,true,true,true,true,true};
bool check(int a,int b)
if(a%3 == b%3 && ABS(a/3 - b/3) == 2 && flags[HALF(a,b)])return false;
if(a/3 == b/3 && ABS(a%3 - b%3) == 2 && flags[HALF(a,b)])return false;
if(ABS(a%3 - b%3) == 2 && ABS(a/3 - b/3) == 2&& flags[HALF(a,b)])return false;
return true;
int count(int j,int pre,int counter)
for(int i=0;i&9;i++){
if(flags[i] && check(pre,i)){
flags[i] = false;
counter = count(j+1,i,counter);
flags[i] = true;
return (j&2)?counter + 1:counter;
int main()
flags[0] = false;
int a = count(0,0,0)*4;
flags[1] = false;flags[0] = true;
int b = count(0,1,0)*4;
flags[4] = false;flags[1] = true;
int c = count(0,4,0);
printf("%d\n",a+b+c);
根据对称性做了优化。
贴一个JAVA代码: public static void main(String[] args) {
int res=counts();
System.out.println(res);
public static int counts(){
HashMap&String,String& map = new HashMap&String,String&();
ArrayList&String& permute = new ArrayList&String&();
for(int i=4;i&=9;i++){
permute.addAll(permutation(9,i));
System.out.println(permute.size());
map.put("13", "2");
map.put("46", "5");
map.put("79", "8");
map.put("17", "4");
map.put("28", "5");
map.put("39", "6");
map.put("19", "5");
map.put("37", "5");
map.put("31", "2");
map.put("64", "5");
map.put("97", "8");
map.put("71", "4");
map.put("82", "5");
map.put("93", "6");
map.put("91", "5");
map.put("73", "5");
int count = permute.size();
for(String cur :permute){
for (Entry&String, String& entry : map.entrySet()){
String key = entry.getKey();
String value = entry.getValue();
if(cur.contains(key) && (cur.indexOf(value) == -1 || cur.indexOf(value) & cur.indexOf(key)) ){
public static ArrayList&String& permutation(int n,int k){
ArrayList&String& res = new ArrayList&String&();
for(int i =1;i&=n;i++){
StringBuilder temp= new StringBuilder();
temp.append(i);
BFS(n,k,temp,1,i,res);
public static void BFS(int n, int k,StringBuilder cur,int depth, int x,ArrayList&String& res){
if(depth == k){
res.add(new String(cur));
for(int i=1;i&=n;i++){
if(cur.indexOf(String.valueOf(i)) &=0)
cur.append(i);
BFS(n,k,cur,depth+1,i,res);
cur.deleteCharAt(cur.length()-1);
已有帐号?
无法登录?
社交帐号登录1 手机出现图案错误怎么回事_百度知道
1 手机出现图案错误怎么回事
我有更好的答案
2、不同手机的按键不同:1。双wipe以后手机信息是完全被清理的,需要重新安装软件什么的。3、关机状态 长按开机键和音量+进入recovery,自己测试一下就好、在recovery模式下选择两个wipe清理解决办法
其他类似问题
为您推荐:
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁经验592 米
在线时间53 小时
版本2.10.26
积分 710, 距离下一级还需 1290 积分
积分 710, 距离下一级还需 1290 积分
机型小米手机1/1S
MIUI版本2.10.26
同学那我手机恶搞,图案密码解锁结果错多了,非得登录小米账号,没联网直接崩溃~重启无效,只能清除数据了吗?小米不会有这么大bug吧.....
分享到微信朋友圈
打开微信,点击底部的“发现”,使用 “扫一扫” 即可将网页分享到我的朋友圈。
经验34294 米
威望158 米
在线时间1200 小时
版本4.12.5
非·典型小奋青
机型小米手机1/1S
签到次数112
MIUI版本4.12.5
看看能不能帮到你。
【玩机学堂】玩机锁屏密码多种解决方案
【MIUI基础教程】【ADB命令第三篇】教你删除忘记的密码!
经验4940 米
在线时间263 小时
积分 5645, 距离下一级还需 14355 积分
积分 5645, 距离下一级还需 14355 积分
机型努比亚 Z5S MINI
签到次数90
MIUI版本4.8.8
通过手机发布
或者刷机也可以呀~
经验3072 米
在线时间356 小时
版本3.12.27
积分 3588, 距离下一级还需 1412 积分
积分 3588, 距离下一级还需 1412 积分
机型小米手机1/1S
签到次数51
MIUI版本3.12.27
论坛上看见过一个用adb指令解锁,自己搜索下吧
经验592 米
在线时间53 小时
版本2.10.26
积分 710, 距离下一级还需 1290 积分
积分 710, 距离下一级还需 1290 积分
机型小米手机1/1S
MIUI版本2.10.26
经验592 米
在线时间53 小时
版本2.10.26
积分 710, 距离下一级还需 1290 积分
积分 710, 距离下一级还需 1290 积分
机型小米手机1/1S
MIUI版本2.10.26
不过还是没有万全的自保方案啊,都是相当麻烦的,个人觉得小米这个功能有些画蛇添足了。
经验34294 米
威望158 米
在线时间1200 小时
版本4.12.5
非·典型小奋青
机型小米手机1/1S
签到次数112
MIUI版本4.12.5
这个本身是一种保护措施,任何事情都有两面性,既然是保护那就要不容易解开,怎么说呢,有利有弊吧。
经验592 米
在线时间53 小时
版本2.10.26
积分 710, 距离下一级还需 1290 积分
积分 710, 距离下一级还需 1290 积分
机型小米手机1/1S
MIUI版本2.10.26
反问一下,锁上了自己都解不开还算是好的嘛?
经验34294 米
威望158 米
在线时间1200 小时
版本4.12.5
非·典型小奋青
机型小米手机1/1S
签到次数112
MIUI版本4.12.5
那你设置的初衷是什么呢?像你之前的情况,你要不设置图案保护就没这么麻烦,多次出错锁定不就是为了保护你的手机吗?
在线时间1 小时
版本ICS24.0
积分 22, 距离下一级还需 28 积分
积分 22, 距离下一级还需 28 积分
机型小米手机1/1S
MIUI版本ICS24.0
我的也是,刚刷的机
1000万用户纪念勋章
MIUI1000万用户纪念勋章
关注腾讯微博
已关注腾讯微博
关注新浪微博
已关注新浪微博
MIUI 3000万
MIUI 3000万发烧友纪念勋章
MIUI 2000万
MIUI 2000万发烧友纪念勋章
MIUI 7纪念勋章
MIUI五周年
MIUI五周年纪念勋章
MIUI三周年
MIUI三周年纪念勋章
已关注微信
已关注极客秀微信
应用达人勋章
MIUI 100周
100周发布纪念勋章
发烧友俱乐部
发烧友俱乐部
MIUI六周年
MIUI六周年纪念勋章
Copyright (C) 2016 MIUI
京ICP备号 | 京公网安备34号 | 京ICP证110507号三星galaxynote10.1由于屏幕解锁图案尝试太多不正确,需要PIN码解锁设备,怎么办?_百度知道
三星galaxynote10.1由于屏幕解锁图案尝试太多不正确,需要PIN码解锁设备,怎么办?
我有更好的答案
尊敬的三星用户您好:根据您的描述,三星安卓操作系统机器若锁屏密码输入错误超过5次后,会提示您输入PIN码解锁,如果您输入过解锁PIN码那么您输入解锁PIN码解锁就可以,若没有备份过,那么在手机提示PIN码解锁后,您的平板是否支持远程控制解锁:1、确定手机是否绑定了三星账户,若绑定了三星账户手机同时开启数据的情况下,可登陆以下链接通过手机的远程控制自行解锁2、若没有绑定三星账户,或者您的手机型号不支持远程控制功能。建议您携带购机的三包凭证将手机送至就近的三星服务中心进行安全解锁。三星服务中心具体位置请点击以下链接:欢迎您向我们反馈您的建议和评价:
去找专业人员解锁
其他类似问题
为您推荐:
pin码的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁为什么我手机上面的照片变得不清晰,还会有一个感叹号。_百度知道
为什么我手机上面的照片变得不清晰,还会有一个感叹号。
其他类似问题
为您推荐:
感叹号的相关知识
其他3条回答
缩略图吧?要么是没内存了,或者说成像出问题了
成像出问题怎么弄啊,内存是有的
可能是内存不够了
没有啊,内存是够的啊
你好!请问一下你,你手机是什么型号?
你把那个像素调到最高
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁}

我要回帖

更多关于 手机删除文件出现错误 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信