欢迎光临散文网 会员登陆 & 注册

【华为OD机考 统一考试机试C卷】开源项目热度榜单(C++ Java JavaScript Python)

2023-12-07 09:44 作者:前端新秀  | 我要投稿

华为OD机考:统一考试A卷+B卷+C卷

2023年11月份,华为官方已经将 华为OD机考:OD统一考试(A卷 / B卷)切换到   OD统一考试(C卷)  。根据考友反馈:目前抽到的试卷为B卷或C卷,其中C卷居多 ,按照之前的经验C卷部分考题会复用A卷,B卷题,博主正积极从考过的同学收集C卷真题。 可以先继续刷B卷,
专栏: https://blog.csdn.net/banxia_frontend/category_12225173.html

华为OD面试真题精选 : https://blog.csdn.net/banxia_frontend/category_12436481.html

在线OJ: https://hydro.ac/d/hwod/p

题目描述

某个开源社区希望将最近热度比较高的开源项目出一个榜单,推荐给社区里面的开发者。对于每个开源项目,开发者可以进行关注(watch)、收藏(star)、fork、提issue、提交合并请求(MR)等。

数据库里面统计了每个开源项目关注、收藏、fork、issue、MR的数量,开源项目的热度根据这5个维度的加权求和进行排序。

H = (Wwatch * #watch) + (Wstar * #star) + (Wfork * #fork) +  (Wissue * #issue) + (Wmr * #mr)

H表示热度值

Wwatch、Wstar、Wfork、Wissue、Wmr分别表示5个统计维度的权重。

#watch、#star、#fork、#issue、#mr分别表示5个统计维度的统计值。

榜单按照热度值降序排序,对于热度值相等的,按照项目名字转换为全小写字母后的字典序排序('a','b','c',...,'x','y','z')。

输入描述

第一行输入为N,表示开源项目的个数,0 < N <100。

第二行输入为权重值列表,一共 5 个整型值,分别对应关注、收藏、fork、issue、MR的权重,权重取值 0 < W ≤ 50。

第三行开始接下来的 N 行为开源项目的统计维度,每一行的格式为:

name nr_watch nr_start nr_fork nr_issue nr_mr

其中 name 为开源项目的名字,由英文字母组成,长度 ≤ 50,其余 5 个整型值分别为该开源项目关注、收藏、fork、issue、MR的数量,数量取值 0 < nr ≤ 1000。

输出描述

按照热度降序,输出开源项目的名字,对于热度值相等的,按照项目名字转换为全小写后的字典序排序('a' > 'b' > 'c' > ... > 'x' > 'y' > 'z')。


【华为OD机考 统一考试机试C卷】开源项目热度榜单(C++ Java JavaScript Python)的评论 (共 条)

分享到微博请遵守国家法律