AT_joi2016ho_e.断層 (Geologic Fault)

NOI/NOI+/CTSC

通过率:0%

AC君温馨提醒

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

题目描述

很久以前,存在着一个高度发达的文明,被称为 IOI 文明。然而,由于火山喷发,这个高度发达的文明最终灭亡了。IOI 文明沿着一条直线状的河流繁荣发展,在 IOI 文明灭亡时,其地表是平坦的。IOI 文明的遗址可以视为坐标平面上的 xx 轴,yy 轴表示高度方向。也就是说,在坐标平面中,直线 y=0y=0 表示地表,区域 y>0y>0 表示地上,区域 y<0y<0 表示地下。此外,IOI 文明灭亡时,aa 年前(a≥0a\geq 0)的地层位于直线 y=−ay=-a 的位置。

在 IOI 文明灭亡后,遗址上发生了 QQ 次地壳变动。第 ii 次(1≤i≤Q1\leq i\leq Q)地壳变动由位置 XiX_i、方向 DiD_i、变动量 LiL_i 表示。DiD_i 为 11 或 22。第 ii 次地壳变动按如下方式发生:

  • 地层的移动如下:
    • 当 Di=1D_i=1 时,断层沿过点 (Xi,0)(X_i,0)、斜率为 11 的直线形成,该直线之上的地层沿直线方向上升 LiL_i 的高度。即,该直线之上的点 (x,y)(x, y) 移动到点 (x+Li,y+Li)(x+L_i, y+L_i)。
    • 当 Di=2D_i=2 时,断层沿过点 (Xi,0)(X_i,0)、斜率为 −1-1 的直线形成,该直线之上的地层沿直线方向上升 LiL_i 的高度。即,该直线之上的点 (x,y)(x, y) 移动到点 (x−Li,y+Li)(x-L_i, y+L_i)。
  • 紧接着,区域 y>0y>0 的地层因风化全部消失。

时光流转至现代,考古学家 JOI 博士开始发掘 IOI 文明的遗迹。JOI 博士想知道每个位置的地表地层,是 IOI 文明灭亡前多少年的地层。已知所有地壳变动的情况。你的任务是,代替 JOI 博士,对于每个满足 1≤i≤N1\leq i\leq N 的整数 ii,求出点 (i−1,0)(i-1,0) 与点 (i,0)(i,0) 之间的地表地层,是 IOI 文明灭亡前多少年的地层。

输入格式

从标准输入读取如下内容。

  • 第 11 行包含两个整数 N,QN, Q,用空格分隔。表示需要求解的地点数量为 NN,地壳变动的次数为 QQ。
  • 接下来的 QQ 行中,第 ii 行(1≤i≤Q1\leq i\leq Q)包含三个整数 Xi,Di,LiX_i, D_i, L_i,用空格分隔。表示第 ii 次地壳变动的位置为 XiX_i,方向为 DiD_i,变动量为 LiL_i。

输出格式

输出共 NN 行。第 ii 行(1≤i≤N1\leq i\leq N)输出点 (i−1,0)(i-1,0) 与点 (i,0)(i,0) 之间的地表地层,是 IOI 文明灭亡前多少年的地层的整数。

输入输出样例

  • 输入#1

    10 2
    12 1 3
    2 2 2

    输出#1

    3
    3
    5
    5
    5
    5
    5
    5
    2
    2
  • 输入#2

    10 6
    14 1 1
    17 1 1
    -6 2 1
    3 2 1
    4 1 1
    0 2 1

    输出#2

    5
    5
    4
    5
    5
    5
    5
    5
    4
    4
  • 输入#3

    15 10
    28 1 7
    -24 2 1
    1 1 1
    8 1 1
    6 2 1
    20 1 3
    12 2 2
    -10 1 3
    7 2 1
    5 1 2

    输出#3

    15
    14
    14
    14
    14
    12
    12
    12
    12
    12
    12
    12
    15
    15
    12

说明/提示

任务

已知 IOI 文明遗址上发生的所有地壳变动,对于每个整数 ii(1≤i≤N1\leq i\leq N),输出点 (i−1,0)(i-1,0) 与点 (i,0)(i,0) 之间的地表地层,是 IOI 文明灭亡前多少年的地层。

限制

所有输入数据满足以下条件:

  • 1≤N≤200 0001\leq N\leq 200\,000。
  • 1≤Q≤200 0001\leq Q\leq 200\,000。
  • −1 000 000 000≤Xi≤1 000 000 000-1\,000\,000\,000\leq X_i\leq 1\,000\,000\,000(1≤i≤Q1\leq i\leq Q)。
  • 1≤Di≤21\leq D_i\leq 2(1≤i≤Q1\leq i\leq Q)。
  • 1≤Li≤1 000 000 0001\leq L_i\leq 1\,000\,000\,000(1≤i≤Q1\leq i\leq Q)。

子任务

子任务 1 [18 分]

满足以下条件:

  • N≤100N\leq 100。
  • Q≤100Q\leq 100。
  • −100≤Xi≤100-100\leq X_i\leq 100(1≤i≤Q1\leq i\leq Q)。
  • Li=1L_i=1(1≤i≤Q1\leq i\leq Q)。

子任务 2 [16 分]

满足以下条件:

  • N≤3,000N\leq 3,000。
  • Q≤3,000Q\leq 3,000。

子任务 3 [66 分]

无额外限制。

样例说明 1

该输入示例对应下图。

样例说明 2

该输入示例满足子任务 11 的限制。

由 ChatGPT 4.1 翻译

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

首页