全新题目


【编程题目 |200分】连接器问题华为OD机试  2023 Q2考试题 A卷】


时间限制:C/C++ 1秒,其他语言 2秒

空间限制:C/C++262144K,其他语言524288K

64bit IO Format:%lld


本题可使用本地IDE编码,不能使用本地已有代码,无跳出限制,

编码后请点击”保存并调试“按钮进行代码提交。


题目描述

【连接器问题】

有一组区间[a0,b0],[a1,b1],…(a,b表示起点,终点),区间有可能重叠、相邻,重叠或相邻则可以合并为更大的区间;

给定一组连接器[x1,x2,x3,…](x表示连接器的最大可连接长度,即x>=gap),可用于将分离的区间连接起来,但两个分离区间之间只能使用1个连接器;

请编程实现使用连接器后,最少的区间数结果。

区间数量<10000,a,b均 <=10000
连接器梳理<10000;x <= 10000

输入描述

区间组:[1,10],[15,20],[18,30],[33,40]
连接器组:[5,4,3,2]


原题界面



代码实现


Golang


Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
package main
import (
"fmt"
"math"
)
package main import ( "fmt" "math" )
package main

import (
    "fmt"
    "math"
)

剩余50%内容,购买单篇文章或订阅会员后查看


隐藏内容

此处内容需要权限查看

  • 普通用户特权:11金币
  • 会员用户特权:免费
  • 永久会员用户特权:免费推荐
会员免费查看


C++解法一


Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
#include<bits/stdc++.h>
using namespace std;
typedef pair<int, int> pii;
typedef struct Node {
int start; // 区间起点
int end; // 区间终点
Node(int start_, int end_) {
this->start = start_;
this->end = end_;
}
} Node;
#include<bits/stdc++.h> using namespace std; typedef pair<int, int> pii; typedef struct Node { int start; // 区间起点 int end; // 区间终点 Node(int start_, int end_) { this->start = start_; this->end = end_; } } Node;
#include<bits/stdc++.h>

using namespace std;

typedef pair<int, int> pii;

typedef struct Node {
    int start; // 区间起点
    int end; // 区间终点

    Node(int start_, int end_) {
        this->start = start_;
        this->end = end_;
    }
} Node;

剩余50%内容,购买单篇文章或订阅会员后查看


隐藏内容

此处内容需要权限查看

  • 普通用户特权:11金币
  • 会员用户特权:免费
  • 永久会员用户特权:免费推荐
会员免费查看

C++解法二


Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
#include<bits/stdc++.h>
using namespace std;
#include<bits/stdc++.h> using namespace std;
#include<bits/stdc++.h>

using namespace std;

剩余50%内容,购买单篇文章或订阅会员后查看


隐藏内容

此处内容需要权限查看

  • 普通用户特权:11金币
  • 会员用户特权:免费
  • 永久会员用户特权:免费推荐
会员免费查看

JAVA解法一


Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
import java.util.HashMap; import java.util.Map; import java.util.Objects; import java.util.Scanner; public class Main { public static void main(String[] args) {
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {

剩余50%内容,购买单篇文章或订阅会员后查看


隐藏内容

此处内容需要权限查看

  • 普通用户特权:11金币
  • 会员用户特权:免费
  • 永久会员用户特权:免费推荐
会员免费查看


JAVA解法二


Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
import java.util.HashMap; import java.util.Map; import java.util.Objects; import java.util.Scanner; public class Main { public static void main(String[] args) {
import java.util.HashMap;
import java.util.Map;
import java.util.Objects;
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {

剩余50%内容,购买单篇文章或订阅会员后查看


隐藏内容

此处内容需要权限查看

  • 普通用户特权:11金币
  • 会员用户特权:免费
  • 永久会员用户特权:免费推荐
会员免费查看


Python


Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
from typing import List
class Solution:
# 待实现函数,在此函数中填入答题代码
from typing import List class Solution: # 待实现函数,在此函数中填入答题代码
from typing import List


class Solution:
        # 待实现函数,在此函数中填入答题代码

剩余50%内容,购买单篇文章或订阅会员后查看


隐藏内容

此处内容需要权限查看

  • 普通用户特权:11金币
  • 会员用户特权:免费
  • 永久会员用户特权:免费推荐
会员免费查看

JavaScript


Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
let strings = readLine().split(",");
let errorSer = readLine().split(",");
let strings = readLine().split(","); let errorSer = readLine().split(",");
let strings = readLine().split(",");
let errorSer = readLine().split(",");

剩余50%内容,购买单篇文章或订阅会员后查看


隐藏内容

此处内容需要权限查看

  • 普通用户特权:11金币
  • 会员用户特权:免费
  • 永久会员用户特权:免费推荐
会员免费查看