CF43E Race

题目描述

今天,在 Berland 举办了一场全长 $s$ 公里的汽车比赛。赛道是一条长为 $s$ 公里的直线。有 $n$ 辆汽车参加比赛,所有汽车同时从赛道的起点出发。对于每辆汽车,都已知其行驶行为——即由若干区间组成的系统,在每个区间上汽车的速度是恒定的。第 $i$ 辆车的第 $j$ 个区间用一对数 $(v_{i,j}, t_{i,j})$ 表示,其中 $v_{i,j}$ 表示该车在此区间的速度(单位:公里每小时),$t_{i,j}$ 表示该车以该速度行驶的时间(单位:小时)。这些区间按照汽车实际行驶顺序给出。 你的任务是计算在比赛过程中,总共有多少次某辆车实现了对另一辆车的“超越”。“超越”被认为是某辆车出现在另一辆车前方的情形。已知所有“超越”都是瞬时发生的,即不存在两辆车在某个时段(长度大于 0)内并排行驶的情况。若在同一时刻、同一位置发生多次“超越”,应分别计数。在起点和终点处的相遇不计为“超越”。

输入格式

第一行包含两个整数 $n$ 和 $s$($2 \leq n \leq 100$, $1 \leq s \leq 10^{6}$),分别表示汽车数量和赛道长度(公里)。接下来有 $n$ 行,每行描述一辆车的区间系统。每个描述以一个整数 $k$($1 \leq k \leq 100$)开始,表示该车的区间数量。随后有 $k$ 对空格分隔的整数,每一对为该区间的速度和持续时间。这些整数均为正数且不超过 1000。保证每辆车所有区间的长度之和(公里数)等于 $s$,且所有超越事件都是瞬时发生的。

输出格式

输出一个整数,表示在比赛过程中,某辆车实现对另一辆车超越的总次数。

说明/提示

由 ChatGPT 5 翻译