题目名称 2785. [JLOI 2011] 不等式组
输入输出 inequality.in/out
难度等级 ★★★
时间限制 1000 ms (1 s)
内存限制 126 MiB
测试数据 10
题目来源 GravatarLGLJ 于2019-09-19加入
开放分组 全部用户
提交状态
分类标签
平衡树 树状数组
分享题解
通过:1, 提交:1, 通过率:100%
GravatarLGLJ 100 1.383 s 6.84 MiB C++
关于 不等式组 的近10条评论(全部评论)
注意误差,注意取等
感谢HXF大佬在线纠错!
GravatarLGLJ
2019-09-20 15:42 1楼

2785. [JLOI 2011] 不等式组

★★★   输入文件:inequality.in   输出文件:inequality.out   简单对比
时间限制:1 s   内存限制:126 MiB

【题目描述】我太强了

旺汪与旺喵最近在做一些不等式的练习。这些不等式都是形如$ax+b>c$的一元不等式。

当然,解这些不等式对旺汪来说太简单了,所以旺喵想挑战旺汪。旺喵给出一组一元不等式,并给出一个数值 。

旺汪需要回答的是$x=k$时成立的不等式的数量。

聪明的旺汪每次都很快就给出了答案。你的任务是快速的验证旺汪的答案是不是正确的。

【输入格式】

输入第一行为一个正整数 ,代表接下来有$N$行。

接下来每一行可能有3种形式:

1.Add a b c, 表明要往不等式组添加一条不等式$ax+b>c$。

2.Del i, 代表删除第$i$条添加的不等式(最先添加的是第1条)。

3.Query k, 代表一个询问,即当$x=k$时,在当前不等式组内成立的不等式的数量。

注意一开始不等式组为空,$a,b,c,i,k $均为整数,且保证所有操作均合法,不会出现要求删除尚未添加的不等式的情况。

【输出格式】

对于每一个询问“Query k”,输出一行,为一个整数,代表询问的答案。

【样例输入】

9
Add 1 1 1
Add -2 4 3
Query 0
Del 1
Query 0
Del 2
Query 0
Add 8 9 100
Query 10

【样例输出】

1
1
0
0

【提示】

第1条添加到不等式组的不等式为$x+1>1$ ,第2条为$−2x+4>3$ ,所以第1个询问的时候只有第2条不等式可以成立,故输出1。

然后删除第1条不等式,再询问的时候依然是只有第2条不等式可以成立,故输出1。

再删除第2条不等式后,因为不等式组里面没有不等式了,所以没有不等式可以被满足,故输出0。

继续加入第3条不等式$8x+9>100$ ,当 $x=k=10$ 时有$8∗10+9=89<100$,故也没有不等式可以被满足,依然输出0。


对于20%的数据, $N\leq 1000$

对于40%的数据,$N\leq 10000$

对于100%的数据,$N\leq 100000$a,b,c的范围为$[-10^8,10^8]$,k的范围为$[-10^6,10^6]$。

【请忽略已经删除过的操作】

【来源】

【JLOI 2011】