首页 > 试题广场 >

线段重合

[编程题]线段重合
  • 热度指数:2803 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
每一个线段都有start和end两个数据项,表示这条线段在X轴上从start位置开始到end位置结束。
给定一批线段,求所有重合区域中最多重合了几个线段,首尾相接的线段不算重合。
例如:线段[1,2]和线段[2.3]不重合。
线段[1,3]和线段[2,3]重合



输入描述:
第一行一个数N,表示有N条线段
接下来N行每行2个数,表示线段起始和终止位置


输出描述:
输出一个数,表示同一个位置最多重合多少条线段
示例1

输入

3
1 2
2 3
1 3

输出

2

备注:

头像 yabo083
发表于 2024-05-22 21:42:06
这边替左神宣传下【算法讲解027【必备】堆结构常见题】 你看你也会! 下面开始说思路: 设定每个线段都有l和r两个端点, 首先先给线段按l,升序排列; (这边我使用java自带的Arrays.sort+自定义规则完成) 其次在for循环里的while循环里,从peek一下小根堆(这里面我们放r,但不 展开全文
头像 yabo083
发表于 2024-05-22 21:42:16
import java.io.*; import java.util.Arrays; import java.util.Comparator; import java.util.PriorityQueue; public class Main { public static int n; 展开全文
头像 rrrrrrrrrrrrrrrrrrr
发表于 2025-02-21 22:22:28
#include <bits/stdc++.h> #include <cstdio> using namespace std; int res[100005]; int n; int a,b; int main() { int ans = 0; scanf(&q 展开全文
头像 AYo爱吃糖葫芦
发表于 2024-08-25 16:34:41
#include <iostream> #include <queue> #include <algorithm> using namespace std; int n; struct line { int l; int r; }lin[100005];// 展开全文
头像 守re
发表于 2024-09-28 16:30:48
#include <iostream> #include <vector> #include <queue> #include <algorithm> #include <iterator> #include <queue> 展开全文
头像 看看机会
发表于 2024-12-11 15:25:11
import java.util.Scanner; import java.io.*; import java.util.Arrays; public class Main { public static int MAXN = 10001; public static int[][ 展开全文
头像 牛客396959330号
发表于 2024-12-21 21:48:32
#include <iostream>//O(NlogN) #include <queue> #include<algorithm> using namespace std; priority_queue<int,vector<int>,grea 展开全文