6138: CSP-S2021 T1:廊桥分配(airport)
[Creator : ]
Description
当一架飞机抵达机场时,可以停靠在航站楼旁的廊桥,也可以停靠在位于机场边缘的远机位。乘客一般更期待停靠在廊桥,因为这样省去了坐摆渡车前往航站楼的周折。然而,因为廊桥的数量有限,所以这样的愿望不总是能实现。
机场分为国内区和国际区,国内航班飞机只能停靠在国内区,国际航班飞机只能停靠在国际区。一部分廊桥属于国内区,其余的廊桥属于国际区。
L 市新建了一座机场,一共有 $n$ 个廊桥。该机场决定,廊桥的使用遵循“先到先得”的原则,即每架飞机抵达后,如果相应的区(国内/国际)还有空闲的廊桥,就停靠在廊桥,否则停靠在远机位(假设远机位的数量充足)。该机场只有一条跑道,因此不存在两架飞机同时抵达的情况。
现给定未来一段时间飞机的抵达、离开时刻,请你负责将 $n$ 个廊桥分配给国内区和国际区,使停靠廊桥的飞机数量最多。
机场分为国内区和国际区,国内航班飞机只能停靠在国内区,国际航班飞机只能停靠在国际区。一部分廊桥属于国内区,其余的廊桥属于国际区。
L 市新建了一座机场,一共有 $n$ 个廊桥。该机场决定,廊桥的使用遵循“先到先得”的原则,即每架飞机抵达后,如果相应的区(国内/国际)还有空闲的廊桥,就停靠在廊桥,否则停靠在远机位(假设远机位的数量充足)。该机场只有一条跑道,因此不存在两架飞机同时抵达的情况。
现给定未来一段时间飞机的抵达、离开时刻,请你负责将 $n$ 个廊桥分配给国内区和国际区,使停靠廊桥的飞机数量最多。
Input
输入的第一行,包含三个正整数 $n,\ m_1,\ m_2$,分别表示廊桥的个数、国内航班飞机的数量、国际航班飞机的数量。
接下来 $m_1$ 行,是国内航班的信息,第 $i$ 行包含两个正整数 $a_{1,\ i},\ b_{1,\ i}$,分别表示一架国内航班飞机的抵达、离开时刻。
接下来 $m_2$ 行,是国际航班的信息,第 $i$ 行包含两个正整数 $a_{2,\ i},\ b_{2,\ i}$,分别表示一架国际航班飞机的抵达、离开时刻。
每行的多个整数由空格分隔。
接下来 $m_1$ 行,是国内航班的信息,第 $i$ 行包含两个正整数 $a_{1,\ i},\ b_{1,\ i}$,分别表示一架国内航班飞机的抵达、离开时刻。
接下来 $m_2$ 行,是国际航班的信息,第 $i$ 行包含两个正整数 $a_{2,\ i},\ b_{2,\ i}$,分别表示一架国际航班飞机的抵达、离开时刻。
每行的多个整数由空格分隔。
Output
输出一个正整数,表示能够停靠廊桥的飞机数量的最大值。
Constraints
对于 $20\%$ 的数据,$n \le 100,\ m_1 + m_2 \le 100$。
对于 $40\%$ 的数据,$n \le 5000,\ m_1 + m_2 \le 5000$。
对于 $100\%$ 的数据,$1 \le n \le {10}^5,\ m_1, m_2 \ge 1,\ m_1 + m_2 \le {10}^5$,所有 $a_{1,\ i},\ b_{1,\ i},\ a_{2,\ i},\ b_{2,\ i}$ 为数值不超过 ${10}^8$ 的互不相同的正整数,且保证对于每个 $i \in [1, m_1]$,都有 $a_{1,\ i} < b_{1,\ i}$,以及对于每个 $i \in [1, m_2]$,都有 $a_{2,\ i} < b_{2,\ i}$。
对于 $40\%$ 的数据,$n \le 5000,\ m_1 + m_2 \le 5000$。
对于 $100\%$ 的数据,$1 \le n \le {10}^5,\ m_1, m_2 \ge 1,\ m_1 + m_2 \le {10}^5$,所有 $a_{1,\ i},\ b_{1,\ i},\ a_{2,\ i},\ b_{2,\ i}$ 为数值不超过 ${10}^8$ 的互不相同的正整数,且保证对于每个 $i \in [1, m_1]$,都有 $a_{1,\ i} < b_{1,\ i}$,以及对于每个 $i \in [1, m_2]$,都有 $a_{2,\ i} < b_{2,\ i}$。
Sample 1 Input
3 5 4
1 5
3 8
6 10
9 14
13 18
2 11
4 15
7 17
12 16
Sample 1 Output
7
在图中,我们用抵达、离开时刻的数对来代表一架飞机,如 $(1,\ 5)$ 表示时刻 $1$ 抵达、时刻 $5$ 离开的飞机;用 $\surd$ 表示该飞机停靠在廊桥,用 $\times$ 表示该飞机停靠在远机位。
我们以表格中阴影部分的计算方式为例,说明该表的含义。在这一部分中,国际区有 $2$ 个廊桥,$4$ 架国际航班飞机依如下次序抵达:
- 首先 $(2,\ 11)$ 在时刻 $2$ 抵达,停靠在廊桥。
- 然后 $(4,\ 15)$ 在时刻 $4$ 抵达,停靠在另一个廊桥。
- 接着 $(7,\ 17)$ 在时刻 $7$ 抵达,这时前 $2$ 架飞机都还没离开、都还占用着廊桥,而国际区只有 $2$ 个廊桥,所以只能停靠远机位。
- 最后 $(12,\ 16)$ 在时刻 $12$ 抵达,这时 $(2,\ 11)$ 这架飞机已经离开,所以有 $1$ 个空闲的廊桥,该飞机可以停靠在廊桥。
Sample 2 Input
2 4 6
20 30
40 50
21 22
41 42
1 19
2 18
3 4
5 6
7 8
9 10
Sample 2 Output
4
当国内区分配 $2$ 个廊桥、国际区分配 $0$ 个廊桥时,停靠廊桥的飞机数量最多,一共 $4$ 架,即所有的国内航班飞机都能停靠在廊桥。
需要注意的是,本题中廊桥的使用遵循“先到先得”的原则,如果国际区只有 $1$ 个廊桥,那么将被飞机 $(1,\ 19)$ 占用,而不会被 $(3,\ 4)、(5,\ 6)、(7,\ 8)、(9,\ 10)$ 这 $4$ 架飞机先后使用。
需要注意的是,本题中廊桥的使用遵循“先到先得”的原则,如果国际区只有 $1$ 个廊桥,那么将被飞机 $(1,\ 19)$ 占用,而不会被 $(3,\ 4)、(5,\ 6)、(7,\ 8)、(9,\ 10)$ 这 $4$ 架飞机先后使用。
Sample 3 Input
10 100 100
13 956
463 517
281 586
540 636
103 573
890 893
45 639
23 320
305 667
556 775
630 716
529 1000
173 741
174 276
6 51
724 763
291 663
334 401
250 511
373 710
467 696
265 449
317 432
92 955
14 707
411 860
603 643
251 874
190 705
9 310
285 539
408 615
861 951
319 413
368 714
264 688
271 670
43 353
792 872
240 770
2 348
325 687
253 750
464 509
543 704
963 989
4 998
148 198
698 899
532 929
50 149
41 168
255 802
246 768
252 656
237 363
146 151
70 119
364 477
578 936
771 809
551 952
434 903
535 609
607 948
446 828
311 313
758 937
62 122
11 614
909 947
898 918
201 862
178 421
176 269
38 420
513 754
67 175
254 360
740 912
134 225
141 922
87 111
553 751
234 331
329 452
783 810
55 162
136 322
762 977
387 856
314 815
653 935
442 817
36 212
362 949
30 637
737 832
53 999
159 531
431 796
215 385
63 718
395 647
289 298
488 545
7 438
596 876
611 628
1 699
61 278
286 367
196 220
25 645
772 914
323 328
537 984
465 501
445 672
19 709
581 953
126 550
88 326
969 994
184 245
247 346
284 660
339 407
338 584
599 703
199 224
959 974
365 826
496 519
34 980
73 835
624 712
171 209
419 466
40 934
189 476
559 646
577 804
816 821
376 435
392 572
793 852
306 495
457 593
206 340
127 512
161 260
273 855
669 897
95 892
824 849
72 524
48 86
576 585
5 927
487 561
676 819
107 734
143 781
642 674
28 129
514 695
137 294
94 978
390 957
147 261
482 652
12 403
571 941
399 961
681 789
83 181
230 853
564 764
542 732
394 654
283 827
106 790
486 993
56 480
105 931
910 991
379 469
479 689
104 414
612 800
798 850
785 799
185 337
15 973
791 807
610 728
396 923
277 884
69 79
Sample 3 Output
32