百度12笔试

想请教一下大家,第二题,求牛牛的排名那个题~
这道题我的思路是先建图,然后进行拓扑排序,请问这个思路正确吗?或者有更好的思路吗?
#笔试题目##百度#
全部评论
我是设置2个list,分别计为high和low,分别代表比牛牛排名高的人和比牛牛排名低的人,第一次遍历所有比赛,把所有牛牛赢了和输的人加入刚刚那俩list中,然后分别遍历这个list,退出条件为i<list.size(),因为list在这个过程中需要再次增加,在这每次遍历中,例如遍历high时,可以通过再次遍历所有比赛把这些人输了的人在加入到high中,当list.size()不再增加时就代表high里存放了所有比牛牛排名高的人,low类似,最后high.size()就是排名肯定比牛牛高的人数,low.size()就是排名肯定比牛牛低的人数
1 回复 分享
发布于 2020-10-13 10:47
我的思路是:根据m场比赛的结果,构造一个(n+1)* (n+1)的矩阵,然后通过遍历矩阵,将明确可知排名低于牛牛的以及排名高于牛牛的分别放入到两个list中,然后看这两个list的长度,就可以得到牛牛排名的区间
点赞 回复 分享
发布于 2020-10-13 06:48
记录每个人打赢的和打输的玩家序号,用bfs统计牛牛打赢和打输的计数,比如牛牛打赢2,2入队,再去2中找他能打赢的入队,最后要加个map去重,结果就是(输的计数,n-赢的计数]
点赞 回复 分享
发布于 2020-10-13 01:46

相关推荐

09-29 15:34
已编辑
北京航空航天大学 C++
做个有文化的流氓:结果是好的,过程不重要,而且你的offer太多了
软开人,秋招你打算投哪些...
点赞 评论 收藏
分享
09-01 10:50
已编辑
东华大学 C++
PDD校招_内推:拼多多意向和开奖一般都比较晚,可能10月11月才出意向
点赞 评论 收藏
分享
评论
3
2
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务