当前位置:   article > 正文

华为OD机试 - ABR 车路协同场景 - (Java 2023 B卷 100分)

abr 车路协同场景

在这里插入图片描述

华为OD机试 2023B卷题库疯狂收录中,刷题点这里

专栏导读

本专栏收录于《华为OD机试(JAVA)真题(A卷+B卷)》

刷的越多,抽中的概率越大,每一题都有详细的答题思路、详细的代码注释、样例测试,发现新题目,随时更新,全天CSDN在线答疑。

一、题目描述

1、问题

数轴×有两个点的序列A={A1,A2,…Am}和B={B1,B2,.Bn},A和Bj均为正整数,A、B已经从小到大排好序,A、B均肯定不为空,给定一个距离R(正整数),列出同时满足如下条件的所有(Ai,Bj)数对

2、条件

  1. Ai <= Bj
  2. Ai,Bj 距离小于等于 R,但如果Ai 找不到R范围内的Bj,则列出距它最近的1个Bj,当然此种情况仍然要满足1),但如果仍然找不到,就丢弃Ai

3、原型

车路协同场景,一条路上发生了有很多事件(A),要通过很多路测设备(B)广播给路上的车,需要给每个事件找到一个合适的路测设备去发送广播消息。

二、输入描述

按照人易读的格式输入一行数据,参见输入样例,其中“ABR={,}”中的每个字符都是关键分割符,输入中无空格,其他均为任意正整数,输入A和B已经排好序,A和B的大小不超过50,正整数范围不会超过65535。

三、输出描述

(Ai,Bj)数对序列,排列顺序满足序列中前面的Ax<=后面的Ay,前面的 Bx<=后面的By,因为输入A和B已经排好序,所以实际上输出结果不用特意排序,排序不是考察点。

四、Java算法源码

感谢@undefined提供更优质算法

在这里插入图片描述

package com.guor.od;

import java.util.*;

public class OdTest01 {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int[] arrA = Arrays.stream(sc.nextLine().split(" ")).mapToInt(Integer::parseInt).toArray();
        int[] arrB = Arrays.stream(sc.nextLine().split(" ")).mapToInt(Integer::parseInt).toArray();
        int R = Integer.valueOf(sc.nextLine());
        for (int a : arrA) {
            int near = -1;
            boolean flag = false;
            for (int b : arrB) {
                if (b - a <= R && b >= a) {
                    System.out.print("(" + a + "," + b + ")");
                    flag = true;
                }
                if (b - a > R) {
                    near = b;
                    break;
                }
            }
            if (flag == false && near != -1) {
                System.out.print("(" + a + "," + near + ")");
            }
        }
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29

五、效果展示

1、输入

1 3 5
2 4 6
2

2、输出

(1,2)(3,4)(5,6)

在这里插入图片描述


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/477823
推荐阅读
相关标签