欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

CCPC2019江西省赛-Problem G.Traffic

程序员文章站 2022-09-22 11:38:23
题目描述: Input Output 题解心得: 啊啊啊啊啊啊啊啊啊啊啊啊,当时在比赛的时候翻了好久词典,终于把这个题目的意思大概搞懂了 然后和我们队的大佬讨论了好久 一开始爆搜O(N3) 然后想了好久奇奇怪怪的方法,分治什么的,然后就剪枝优化。 但是最后用标记法把时间复杂度压到了O(N2)。 大致 ......

题目描述:

  /*纯手打题面*/
  avin is observing the cars at a crossroads.he finds that there are n cars running in the east-west direction with the i-th car passing the intersection at time a[i].there are another m cars running in the north-south direction with the i-th car passing the intersection at time b[i].if two cars passing the intersections at the same time,a traffic crash occurs.in order to achieve world peace and harmony,all the cars running in the north-south direction wait the same time amount of integral time so that no two cars bump.you are asked the
minimum waiting time.
/*纯手打题面*/

input

n m
a[i]
b[i]
(1<=n,m<=1000;1<=ai,bi<=1000)

output

the minimum waiting time(integer).

题解心得:

啊啊啊啊啊啊啊啊啊啊啊啊,当时在比赛的时候翻了好久词典,终于把这个题目的意思大概搞懂了

然后和我们队的大佬讨论了好久

一开始爆搜o(n3)

然后想了好久奇奇怪怪的方法,分治什么的,然后就剪枝优化。

但是最后用标记法把时间复杂度压到了o(n2)。

大致思路:

枚举时间(一个循环)

在每个循环里标记a[i]所占的时间点(布尔数组c)

同时标记b[i]+t的时间点(布尔数组d)

接着c&&d;

就可以了。

这题真的水,不加剪枝也能ac。

代码:

以后附。