华为9.29机试第二题 思路分享

如题,第二题有没有大佬做出来了?可以一起讨论讨论呀~#华为机考##华为#
全部评论
超时了,只过了50%😅
1 回复 分享
发布于 2021-09-29 21:40
各位大佬,9.29这次机试的几个题目都是啥呀?
1 回复 分享
发布于 2021-10-03 14:06
同问题目是啥
1 回复 分享
发布于 2021-10-13 12:34
借楼问一下多少分算过啊
点赞 回复 分享
发布于 2021-09-29 21:41
map<string, vector<string>> G; map<string, int> d, vis, a; void spfa(string str) { queue<string> q1; d.clear(); vis.clear(); d[str] = 0; vis[str] = 1; q1.push(str); while (q1.size()) { auto u = q1.front(); q1.pop(); vis[u] = 0; for (auto v : G[u]) { if (d[u] + 1 > d[v]) { d[v] = d[u] + 1; if (!vis[v]) { q1.push(v); vis[v] = 1; } } } } } int main() { int n; string id; cin >> n >> id; for (int i = 1; i <=n; i++) { string x, y, z; cin >> x >> y >> z; a[x]++; a[y]++; a[z]++; if (y != "null") G[y].push_back(x); if (z != "null") G[x].push_back(z); } spfa(id); int len = 0; int res = 0; for (auto x : d) { len = max(len, x.second); } for (auto m : a) { string x = m.first; if (x == "null") continue; spfa(x); res = max(res, len + d[id]); } cout << res + 1 << endl; return 1; } 预计输出和实际输出是一致的,但是判断为错的,人麻了……
点赞 回复 分享
发布于 2021-09-29 21:44
答案好像有3,4,5,6 , 7 ,9,除了4是20%,其他都是10%~15%
点赞 回复 分享
发布于 2021-09-29 21:44
这次题目是个啥
点赞 回复 分享
发布于 2021-09-29 21:45
有人试过print n吗?能过多少?
点赞 回复 分享
发布于 2021-09-29 21:48
没来得及提交
点赞 回复 分享
发布于 2021-09-29 21:52
这次难度咋样。。。 ?
点赞 回复 分享
发布于 2021-09-29 21:55
华为软开和算法的题目是一样的吗
点赞 回复 分享
发布于 2021-09-29 22:17
做300分,第三题不会
点赞 回复 分享
发布于 2021-09-29 22:21
三题分值各是怎么样的?    也是100 200 300么? 多少分能面试呢? 有没有知道的 回答下我 hhh
点赞 回复 分享
发布于 2021-09-29 22:53
用map来存路线和入度,从入度为0的序号开始dfs,途中如果遇到了目标,则保存已经递归的深度
点赞 回复 分享
发布于 2021-09-30 10:14
第一题75%可能有没有考虑到的错误案例,第二题100%用的map,第三题超时想到的方法没来得及做,也不知道可行不可行
点赞 回复 分享
发布于 2021-09-30 10:54
最后一题超时了,就过8
点赞 回复 分享
发布于 2021-09-30 16:55

相关推荐

评论
点赞
7
分享
牛客网
牛客企业服务