【2024华为OD机试真题C卷D卷-100分】测试用例执行计划(C++/Java/Python)

 2024华为OD机试题库-(C卷+D卷)-(JAVA、Python、C++)

题目描述

某个产品当前迭代周期内有 N 个特性(F1,F2,......FN)需要进行覆盖测试,每个特性都被评估了对应的优先级,特性使用其 ID 作为下标进行标识。

设计了 M 个测试用例(T1,T2,......,TM),每个测试用例对应一个覆盖特性的集合,

测试用例使用其 ID 作为下标进行标识,测试用例的优先级定义为其覆盖的特性的优先级之和。

在开展测试之前,需要制定测试用例的执行顺序,规则为:优先级大的用例先执行,如果存在优先级相同的用例,用例 ID 小的先执行。

输入描述

第一行输入为 N 和 M,

  • N 表示特性的数量,0 < N ≤ 100
  • M 表示测试用例的数量,0 < M ≤ 100

之后 N 行表示特性 ID=1 到特性 ID=N 的优先级,

再接下来 M 行表示测试用例 ID=1 到测试用例 ID=M 关联的特性的 ID 的列表。

输出描述

按照执行顺序(优先级从大到小)输出测试用例的 ID,每行一个ID。

测试用例覆盖的 ID 不重复。

用例1

输入

5 4

1

1

2

3

5

1 2 3

1 4

3 4 5

2 3 4

输出

3

4

1

2

说明

测试用例的优先级计算如下:

T1 = Pf1 + Pf2 + Pf3 = 1 + 1 + 2 = 4

T2 = Pf1 + Pf4 = 1 + 3 = 4

T3 = Pf3 + Pf4 + Pf5 = 2 + 3 + 5 = 10

T4 = Pf2 + Pf3 + Pf4 = 1 + 2 + 3 = 6

按照优先级从小到大,以及相同优先级,ID小的先执行的规则,执行顺序为T3,T4,T1,T2

用例2

输入

3 3

3

1

5

1 2 3

1 2 3

1 2 3

输出

1

2

3

说明

测试用例的优先级计算如下:

T1 = Pf1 + Pf2 + Pf3 = 3 + 1 + 5 = 9

T2 = Pf1 + Pf2 + Pf3 = 3 + 1 + 5 = 9

T3 = Pf1 + Pf2 + Pf3 = 3 + 1 + 5 = 9

每个优先级一样,按照 ID 从小到大执行,执行顺序为T1,T2,T3

考点

多条件排序

解题思路

简单的多条件排序题目,数据的输入处理稍麻烦,注意

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

2024剑指offer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值