#cFYSlydlt60x6502. 区间 Interval(西瓜种植)

区间 Interval(西瓜种植)

好的,这是整理好的题面,不含解题思路,只包含样例解释。


题目描述

给定 nn 个区间 [ai,bi][a_i, b_i]nn 个整数 cic_i
你需要构造一个整数集合 ZZ,使得对于每个 i[1,n]i\in[1,n],集合 ZZ 中满足 aixbia_i \le x \le b_i 的整数 xx 不少于 cic_i 个。

求这样的整数集合 ZZ 最少包含多少个数。


输入格式

第一行一个整数 nn
接下来 nn 行,每行三个整数 ai,bi,cia_i,b_i,c_i

输出格式

输出一个整数,表示最少包含的数的个数。

数据范围

  • 1n500001 \le n \le 50000
  • 0ai,bi500000 \le a_i,b_i \le 50000
  • 0cibiai+10 \le c_i \le b_i - a_i + 1

输入样例

5
3 7 3
8 10 3
6 8 1
1 3 1
10 11 1

输出样例

6

样例解释

n=5n=5,要求如下:

  1. [3,7][3,7] 内至少包含 33 个整数
  2. [8,10][8,10] 内至少包含 33 个整数
  3. [6,8][6,8] 内至少包含 11 个整数
  4. [1,3][1,3] 内至少包含 11 个整数
  5. [10,11][10,11] 内至少包含 11 个整数

寻找最少集合

可以尝试选一些数覆盖这些要求。

一种可行方案:选 {3,4,5,8,9,10}\{3,4,5,8,9,10\}
检查:

  • [3,7][3,7]:有 3,4,53,4,5 共 3 个 ✅
  • [8,10][8,10]:有 8,9,108,9,10 共 3 个 ✅
  • [6,8][6,8]:有 88 共 1 个 ✅
  • [1,3][1,3]:有 33 共 1 个 ✅
  • [10,11][10,11]:有 1010 共 1 个 ✅

总个数 6。

能否用 5 个数满足?
[3,7][3,7] 至少 3 个,[8,10][8,10] 至少 3 个,这两个区间无重叠(因为 [3,7][3,7] 最右 7,[8,10][8,10] 最左 8),它们之间完全分离,因此至少要 3+3=63+3=6 个数(因为 [3,7][3,7] 需要 3 个不同整数,[8,10][8,10] 需要 3 个不同整数,它们没有公共数字)。
所以最少就是 6 个。


输出 6