当前位置:
文档之家› 企业文化专题-华为公司校招软件开发工程师-上机笔试题
企业文化专题-华为公司校招软件开发工程师-上机笔试题
更多人力资源相关资料敬请关注微信公众号"人事资料库"
} else if (array[x][y-1] == word[w]) { y = y-1; } else break; }
} if ('\0' == word[w]) { return 1; } }
} } return 0; } int main(void) { int m, n; char word[100]; char input[21][21] = {'0'}; scanf("%d %d", &m, &n); scanf("%s", word); for (int i=0; i<m; i++) { scanf("%s",input[i]);关资料敬请关注微信公众号"人事资料库"
样例输出: 答案提示:
YES
bool maze(char array[21][21], int m, int n, char *word) { int i, j, w=0; int x, y; for (i=0; i<m; i++) { x = i; for (j=0; j<n; j++) { y = j; if (array[x][y] == word[w]) { while ('\0' != word[w]) { w++; if ((x>0) && (x<m-1) && (y>0) && (y<n-1)) { if (array[x-1][y] == word[w]) { x = x-1; } else if (array[x+1][y] == word[w]) { x = x+1; } else if (array[x][y-1] == word[w]) { y = y-1;
更多人力资源相关资料敬请关注微信公众号"人事资料库"
} else if (array[x][y-1] == word[w]) { y = y-1; } else if (array[x][y+1] == word[w]) { y = y+1; } else break; } else if ((x>0) && (x<m-1) && (y<n-1)) { if (array[x-1][y] == word[w]) { x = x-1; } else if (array[x+1][y] == word[w]) { x = x+1; } else if (array[x][y+1] == word[w]) { y = y+1; } else break; } else if ((x>0) && (x<m-1) && (y>0))
更多人力资源相关资料敬请关注微信公众号"人事资料库"
} else if (array[x][y+1] == word[w]) { y = y+1; } else break; } else if ((x<m-1) && (y>0) && (y<n-1)) { if (array[x+1][y] == word[w]) { x = x+1; } else if (array[x][y-1] == word[w]) { y = y-1; } else if (array[x][y+1] == word[w]) { y = y+1; } else break; } else if ((x>0) && (y>0) && (y<n-1)) { if (array[x-1][y] == word[w]) { x = x-1;
更多人力资源相关资料敬请关注微信公众号"人事资料库"
{ if (array[x-1][y] == word[w]) { x = x-1; } else if (array[x+1][y] == word[w]) { x = x+1; } else if (array[x][y-1] == word[w]) { y = y-1; } else break; } else if ((x<m-1) && (y<n-1)) { if (array[x+1][y] == word[w]) { x = x+1; } else if (array[x][y+1] == word[w]) { y = y+1; } else break; } else if ((x<m-1) && (y>0))
注意区分英文字母大小写,你只能上下左右行 走。 运行时间限制: 内存限制: 无限制 无限制 输入第一行包含两个整 数n、m(0<n, m<21)分别表示n行m 列的矩阵,第二行是长度不超 过100的单词W,从第3行到底n+3 行是只包含大小写英文字母的长 度为m的字符串。 如果能在地图中连成给定的单 词,则输出“YES”,否则输出 “NO”。注意:每个字母只能用 一次。 5 5 SOLO CPUCY EKLQH CRSOL EKLQO PGRBC
更多人力资源相关资料敬请关注微信公众号"人事资料库"
{ if (array[x+1][y] == word[w]) { x = x+1; } else if (array[x][y-1] == word[w]) { y = y-1; } else break; } else if ((x>0) && (y<n-1)) { if (array[x-1][y] == word[w]) { x = x-1; } else if (array[x][y+1] == word[w]) { y = y+1; } else break; } else if ((x>0) && (y>0)) { if (array[x-1][y] == word[w]) { x = x-1;
更多人力资源相关资料敬请关注微信公众号"人事资料库"
Word Maze 是一个网络小游戏,你需要找到以 字母标注的食物,但要求以给定单词字母的顺 序吃掉。如上图,假设给定单词if,你必须先 吃掉i然后才能吃掉f。 但现在你的任务可没有这么简单,你现在 处于一个迷宫Maze(n×m的矩阵)当中,里面 到处都是以字母标注的食物,但你只能吃掉能 连成给定单词W的食物。 如下图,指定W为“SOLO”,则在地图中红色 标注了单词“SOLO”。