2023华为od机试统一考试B卷 Java【比大小游戏】

前言

本题使用Java解答,如果需要Python版本,请参考以下链接:
点我

题目内容

现在有一个名字叫做比大小的游戏,游戏的规则是:参加游戏的A
B两个人会拿到两个数字序列,这两个序列的长度是一样的。两个数字序列不相同的且其中的数字是随机的。

然后,两人从数字序列中挑选出一个数字进行大小比较。数字较大的人得一分,数字较小的人扣1分。用过的数字需要丢弃。

求A可能赢B的最大分数

示例1:

输入
3
4 8 10

3 6 4
输出

3

2023华为od机试统一考试B卷 Java【比大小游戏】_第1张图片

解题思路

首先对两个数字序列进行排序,用两个索引indexA和indexB分别表示数字序列A和B的当前比较位置,初始化为0。result来表示A可能赢B的最大分数。
开始循环,当indexA小于N且indexB小于N时进行比较。
如果sequenceA[indexA]大于sequenceB[indexB],表示A赢了,将result加1,并将indexA和indexB都加1。
如果sequenceA[indexA]小于sequenceB[indexB],表示A输了,将result减1,并将indexB加1。

你可能感兴趣的:(华为od,游戏,java,华为机试)