#3449. Distribution

0
    ID: 3449 传统题 2000ms 1024MiB 尝试: 0 已通过: 0 难度: 2 上传者: 标签>AtCoderabc214CGESP 3级数组枚举(双层循环)

Distribution

Distribution

题目描述

有 NN 个生物站成一个圆圈,按逆时针顺序分别称为 Snuke 1,2,...,N1, 2, ..., N。 当 Snuke ii (1≤i≤N)(1 \leq i \leq N) 在时间 tt 收到一颗宝石时,SiS_i 时间单位后,它会在时间 t+Sit+S_i 将那颗宝石交给 Snuke i+1i+1。这里,Snuke N+1N+1 即 Snuke 11。 此外,Takahashi 会在时间 TiT_i 将一颗宝石交给 Snuke ii。 对于每个 ii (1≤i≤N)(1 \leq i \leq N),求 Snuke ii 第一次收到宝石的时间。假设传递宝石所需时间可以忽略不计。

输入格式

输入按照标准输入给出,格式如下: NN S1S_1 S2S_2 …\ldots SNS_N T1T_1 T2T_2 …\ldots TNT_N

输出格式

打印 NN 行。第 ii 行 (1≤i≤N)(1 \leq i \leq N) 应包含 Snuke ii 第一次收到宝石的时间。

3
4 1 5
3 10 100
3
7
8
4
100 100 100 100
1 1 1 1
1
1
1
1
4
1 2 3 4
1 2 4 7
1
2
4
7
8
84 87 78 16 94 36 87 93
50 22 63 28 91 60 64 27
50
22
63
28
44
60
64
27

提示

1≤N≤2000001 \leq N \leq 200000 1≤Si,Ti≤1091 \leq S_i,T_i \leq 10^9 输入中的所有数值均为整数。我们将按时间顺序列出三个 Snuke 和 Takahashi 在时间 1313 之前的动作。 时间 33:Takahashi 把一颗宝石交给 Snuke 11。 时间 77:Snuke 11 把一颗宝石交给 Snuke 22。 时间 88:Snuke 22 把一颗宝石交给 Snuke 33。 时间 1010:Takahashi 把一颗宝石交给 Snuke 22。 时间 1111:Snuke 22 把一颗宝石交给 Snuke 33。 时间 1313:Snuke 33 把一颗宝石交给 Snuke 11。 之后他们会继续传递宝石,但这对答案无关紧要。
注意 SiS_i 和 TiT_i 的取值可能不互不相同。
注意一个 Snuke 可能同时执行多次交易。特别地,一个 Snuke 可能同时从 Takahashi 和另一个 Snuke 收到宝石。

标签: AtCoder|abc214C

来源

AtCoder|abc214C