题目名称 1784. [国家集训队2012]电子对撞机
输入输出 nt2012_energy.in/out
难度等级 ★★★
时间限制 3000 ms (3 s)
内存限制 256 MiB
测试数据 20
题目来源 Gravatarcstdio 于2014-10-31加入
开放分组 全部用户
提交状态
分类标签
数学
分享题解
通过:3, 提交:3, 通过率:100%
GravatarOIdiot 100 4.896 s 22.02 MiB C++
Gravatarcstdio 100 5.651 s 99.50 MiB C++
Gravatarcstdio 100 5.782 s 99.50 MiB C++
关于 电子对撞机 的近10条评论(全部评论)
好题!
折腾三天,终于整出来了……题目和做法都非常优美
我写的题解地址
Gravatarcstdio
2014-11-02 11:55 1楼

1784. [国家集训队2012]电子对撞机

★★★   输入文件:nt2012_energy.in   输出文件:nt2012_energy.out   简单对比
时间限制:3 s   内存限制:256 MiB
电子对撞机(刘洪轩)

【题意描述】

感谢 $HQ$ 提供题目描述
$Q$ 国最近科学技术不断进步,经过不懈努力,$Q$ 国主席 $QQ$ 终于在质子对撞机的基础上研发了新一代能量供给装置:电子对撞机。
这个设备呈长条状且对外封闭,设备内部有 $N$ 个带有一定能量的电子。长条状的外形使得这些电子只能沿条形走向左右运动。设备长度为 $L$,左端位置为 $0$,右端位置为 $L$。内部的电子速率恒定,每一个单位时间在左右方向上移动一个单位长度,而方向可能是向左或向右。当两个电子相遇即运动到同一个点时,它们之间会发生对撞,对撞后它们的速率不变但运动方向反向。设备的两个端点处(即坐标为 $0$ 和 $L$ 的位置)存在保护外壳,当电子运动到端点时会和外壳发生碰撞,碰撞后电子也会保持不变的速率但运动方向反向。电子分为高能电子和低能电子,电子之间对撞会产生能量,低能电子和低能电子对撞会产生 $1$ 个单位的能量,低能电子和高能电子对撞会产生 $4$ 个单位的能量,高能电子和高能电子对撞会产生 $25$ 个单位的能量,电子和外壳碰撞不会产生能量。设备内部还有 $M$ 个能量接收器,每个接收器可以接受从 $A$ 到 $B$ 的一个区间内(包括两个端点)的能量,且接收器可以接受的范围没有交集。若电子对撞的位置处于接收器的接受范围内,对撞产生的能量会被接收器接受,若对撞位置不在接收器上,这些能量则会丢失。这项技术的核心在于:对撞时电子的能量不会有损失,所以电子对撞机可以一直不断地运行下去供给能量。
现在 $QQ$ 已经制造出了第一批电子对撞机,并测得了时刻为 $0$ 时电子的位置和运动状态,现在 $QQ$ 想知道从时刻 $0$ 到时刻 $T$(包括 $T$ )总共接收到的能量,于是这个任务交给了神犇你。

【输入格式】

第一行四个整数 $N, M, L, T$,分别表示电子个数,能量接收器个数,设备长度和时间。
之后 $N$ 行每行 $3$ 个整数,$X_i, P_i, E_i$ 分别表示第 $i$ 个电子的位置,运动方向和能量级别。
$P_i$ 为 $1$ 表示向右运动,为 $-1$ 表示向左运动。
$E_i$ 为 $0$ 表示低能电子,为 $1$ 表示高能电子。
之后 $M$ 行每行 $2$ 个整数,$A_i$ 和 $B_i$,表示接收器的接收范围。

【输出格式】

仅一行,包括一个整数,表示总共接收到的能量数。

【样例输入】

3 1 8 7
2 1 0
4 -1 0
7 1 1
3 6

【样例输出】

5

【样例说明】

$T=1$ 时,在位置 $3$,第一个电子和第二个电子对撞,产生 $1$ 的能量。

在位置 $8$,第三个电子和右侧外壳碰撞。

$T=3.5$ 时,在位置 $5.5$,第二个电子和第三个电子对撞,产生 $4$ 的能量。

$T=4$ 时,在位置 $0$,第一个电子和左侧外壳碰撞。

$T=6$ 时,在位置 $8$,第三个电子和右侧外壳碰撞。

$T=6.5$ 时,在位置 $2.5$,第一个电子和第二个电子对撞,产生1的能量,由于在接收器范围外,能量丢失。

最后结果为 $1+4=5$ 个单位能量。

【数据规模和约定】

输入保证开始时任意两个电子不处于同一个位置。
输入保证接收器的接受范围没有交集,且所有接收器按坐标从小到大的顺序给出。
共20组数据,满足如下条件
1 ~ 2
N <= 10
M <= 3
L <= 1000,
T <= 100000
2 <= N <= 1000000,
1 <= M <= 10,
2 <= L <= 100000000,
0 <= T <= 1000000000,
0 < X < L
0 <= A < B <= L
3 ~ 4
N <= 100
Ei = 0
L <= 1000000
5 ~ 6
N <= 1000

7 ~ 8
M = 1 且
A1 = 0, B1 = L
9 ~ 10
N <= 100000
11~12

13~20