文章
7
粉丝
254
获赞
2
访问
79.7k
DFS之前AC了,但是后来想了一下思路不对。有DFS做出来的麻烦给个评论
下面是BFS 实现
#include<stdio.h>
#include<queue>
#include<string.h>
#include<string>
#include<map>
using namespace std;
struct mayacode{
string s;
int step;
};
int bfs(string s){
map<string, bool>flag;
int ans = -1;
mayacode code;
code.s = s;
code.step = 0;
queue<mayacode>q;
q.push(code);
flag[code.s] = true;
while(!q.empty()){
mayacode temp = q.front();
q.pop();
if(temp.s.find("2012") != string::npos){ //找到了
ans = temp.step;
return ans;
}
&nb...
登录后发布评论
这个题数据量小,用BFS的话效率高很快就能搜到,用DFS也可以的。
但是你这个代码问题很大啊
随便一组数据都有问题
比如输入
10
0021212011
你的输出是2
正确答案是1