#T2229. 线段追踪 II(Line Segments Trace II)

线段追踪 II(Line Segments Trace II)

链接: https://cses.fi/problemset/task/3428

板块: Geometry

时限: 1.00 s | 内存: 512 MB

题目描述

nn 条线段,其端点坐标均为整数。每个横坐标都在 00mm 之间。每条线段的斜率均为整数。

对每个横坐标 0,1,,m0,1,\dots,m,求出所有线段在该处的最大纵坐标。若某处没有线段,则最大值为 1-1

输入

第一行包含两个整数 nnmm:线段的数量以及最大的横坐标。

接下来 nn 行描述这些线段。每行包含四个整数 x1x_1y1y_1x2x_2y2y_2:存在一条连接点 (x1,y1)(x_1,y_1)(x2,y2)(x_2,y_2) 的线段。

输出

输出 m+1m+1 个整数:横坐标 x=0,1,,mx=0,1,\dots,m 处的最大纵坐标。

数据范围

1n,m1051 \le n, m \le 10^5 0x1<x2m0 \le x_1 < x_2 \le m 0y1,y21090 \le y_1,y_2 \le 10^9

样例输入

4 5
1 1 3 3
1 2 4 2
2 4 5 7
2 8 5 2

样例输出

-1 2 8 6 6 7