CF1557D.Ezzat and Grid

提高+/省选-

通过率:0%

时间限制:2.50s

内存限制:256MB

AC君温馨提醒

该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

Moamen was drawing a grid of nn rows and 10910^9 columns containing only digits 00 and 11. Ezzat noticed what Moamen was drawing and became interested in the minimum number of rows one needs to remove to make the grid beautiful.

A grid is beautiful if and only if for every two consecutive rows there is at least one column containing 11 in these two rows.

Ezzat will give you the number of rows nn, and mm segments of the grid that contain digits 11. Every segment is represented with three integers ii, ll, and rr, where ii represents the row number, and ll and rr represent the first and the last column of the segment in that row.

For example, if n=3n = 3, m=6m = 6, and the segments are (1,1,1)(1,1,1), (1,7,8)(1,7,8), (2,7,7)(2,7,7), (2,15,15)(2,15,15), (3,1,1)(3,1,1), (3,15,15)(3,15,15), then the grid is:

Your task is to tell Ezzat the minimum number of rows that should be removed to make the grid beautiful.

莫阿门正在绘制一个包含 nn 行、10910^9 列的网格,其中仅包含数字 00 和 11。埃扎特注意到了莫阿门所画的内容,并对使该网格变为“优美”所需删除的最少行数产生了兴趣。

当且仅当对于任意两个相邻的行,都存在至少一列,使得该列在这两行中均为 11 时,该网格被称为优美的。

埃扎特将为你提供行数 nn,以及网格中所有数字 11 所在的 mm 个区间段。每个区间段由三个整数 ii、ll、rr 表示:其中 ii 表示行号,ll 和 rr 分别表示该行中该区间段的起始列号和结束列号(含端点)。

例如,若 n=3n = 3,m=6m = 6,且这些区间段为 (1,1,1)(1,1,1)、(1,7,8)(1,7,8)、(2,7,7)(2,7,7)、(2,15,15)(2,15,15)、(3,1,1)(3,1,1)、(3,15,15)(3,15,15),则该网格如下所示:

你的任务是告诉埃扎特:为使该网格变为优美的,所需删除的最少行数。

输入格式

The first line contains two integers nn and mm (1≤n,m≤3⋅1051 \le n, m \le 3\cdot10^5).

Each of the next mm lines contains three integers ii, ll, and rr (1≤i≤n1 \le i \le n, 1≤l≤r≤1091 \le l \le r \le 10^9). Each of these mm lines means that row number ii contains digits 11 in columns from ll to rr, inclusive.

Note that the segments may overlap.

第一行包含两个整数 nn 和 mm(1≤n,m≤3⋅1051 \le n, m \le 3\cdot10^5)。

接下来的 mm 行,每行包含三个整数 ii、ll 和 rr(1≤i≤n1 \le i \le n,1≤l≤r≤1091 \le l \le r \le 10^9)。这 mm 行中的每一行表示:第 ii 行在列区间 [l,r][l, r](含端点)内的所有位置上数字均为 11。

注意:这些区间可能相互重叠。

输出格式

In the first line, print a single integer kk — the minimum number of rows that should be removed.

In the second line print kk distinct integers r1,r2,…,rkr_1, r_2, \ldots, r_k, representing the rows that should be removed (1≤ri≤n1 \le r_i \le n), in any order.

If there are multiple answers, print any.

第一行输出一个整数 kk —— 应删除的最少行数。

第二行输出 kk 个互不相同的整数 r1,r2,…,rkr_1, r_2, \ldots, r_k,表示应删除的行(1≤ri≤n1 \le r_i \le n),顺序任意。

如有多个答案,输出任意一个即可。

输入输出样例

  • 输入#1

    3 6
    1 1 1
    1 7 8
    2 7 7
    2 15 15
    3 1 1
    3 15 15

    输出#1

    0
  • 输入#2

    5 4
    1 2 3
    2 4 6
    3 3 5
    5 1 1

    输出#2

    3
    2 4 5

说明/提示

In the first test case, the grid is the one explained in the problem statement. The grid has the following properties:

  1. The 11-st row and the 22-nd row have a common 11 in the column 77.
  2. The 22-nd row and the 33-rd row have a common 11 in the column 1515.

As a result, this grid is beautiful and we do not need to remove any row.

In the second test case, the given grid is as follows:

在第一个测试用例中,网格即为题目描述中所解释的网格。该网格具有以下性质:

  1. 第 11 行与第 22 行在第 77 列有一个共同的 11。
  2. 第 22 行与第 33 行在第 1515 列有一个共同的 11。

因此,该网格是“优美的”,我们无需删除任何行。

在第二个测试用例中,给定的网格如下所示:

输入解题思路,AI测评打分。不知道怎么写?

首页