QOJ.ac

QOJ

Límite de tiempo: 2 s Límite de memoria: 32 MB Puntuación total: 100

#592. 溜冰鞋

Estadísticas

Byteasar 经营着一家滑冰俱乐部。会员们定期聚会并一起训练,他们总是使用俱乐部的公用冰鞋。冰鞋的尺码(按惯例)从 $1$ 到 $n$ 编号。当然,每位俱乐部成员都有自己的脚码,但这还不是全部!滑冰者有一个冰鞋尺码容差因子 $d$:脚码为 $r$ 的滑冰者可以穿尺码从 $r$ 到 $r+d$ 的冰鞋。需要注意的是,没有任何滑冰者会同时穿两只不同尺码的冰鞋。

为了供应俱乐部,Byteasar 为每个尺码(即从 $1$ 到 $n$)购买了 $k$ 双冰鞋。随着时间的推移,有些人加入俱乐部,也有一些老会员离开。Byteasar 担心在每次训练时,他是否都有足够尺码合适的冰鞋供每位成员使用。

假设俱乐部最初没有任何成员。Byteasar 将为你提供一个包含 $m$ 个事件的序列,每个事件的形式如下:$x$ 名脚码为 $r$ 的(新)成员加入或离开了俱乐部。在每次事件发生后,Byteasar 都想知道他是否拥有足够尺码合适的冰鞋供每位俱乐部成员使用。他请求你编写一个程序来为他进行检查。

输入格式

标准输入的第一行包含四个整数 $n$、$m$、$k$ 和 $d$($1 \le n \le 200\,000$,$1 \le m \le 500\,000$,$1 \le k \le 10^9$,$0 \le d < n$),由空格分隔,分别表示:最大冰鞋尺码、事件数量、Byteasar 最初为每个尺码购买的冰鞋对数,以及冰鞋尺码容差因子。接下来的 $m$ 行包含 $m$ 个事件序列,每行一个事件。第 $(i+1)$ 行(对于 $1 \le i \le m$)包含两个整数:$r_i$ 和 $x_i$($1 \le r_i \le n-d$,$-10^9 \le x_i \le 10^9$),由空格分隔。如果 $x_i \ge 0$,表示有 $x_i$ 名脚码为 $r_i$ 的新成员加入了俱乐部。如果 $x_i < 0$,表示有 $x_i$ 名脚码为 $r_i$ 的成员离开了俱乐部。你可以假设事件序列是合理的,即从未加入俱乐部的人不会离开。

输出格式

你的程序应向标准输出打印 $m$ 行。第 $i$ 行(对于 $1 \le i \le m$)应输出 TAK(波兰语,意为“是”)或 NIE(波兰语,意为“否”),取决于在第 $i$ 个事件发生后,Byteasar 是否有足够的尺码合适的冰鞋供每位俱乐部成员使用。

样例

输入 1

4 4 2 1
1 3
2 3
3 3
2 -1

输出 1

TAK
TAK
NIE
TAK

说明 1

在输入序列中的所有事件发生后,有三名俱乐部成员可以穿 1 或 2 码的冰鞋,两名成员可以穿 2 或 3 码的冰鞋,三名成员可以穿 3 或 4 码的冰鞋。在这样的成员名单下,每个尺码(1、2、3 和 4)各两双冰鞋就足够了:

  • 两名成员获得 1 码冰鞋;
  • 2 码冰鞋分给一名可以穿 1 或 2 码的成员,以及一名可以穿 2 或 3 码的成员;
  • 3 码冰鞋分给一名可以穿 2 或 3 码的成员,以及一名可以穿 3 或 4 码的成员;
  • 其余两名成员获得 4 码冰鞋。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.