#arc155b. [arc155_b]Abs Abs Function

[arc155_b]Abs Abs Function

问题陈述

对于一组非负整数对的集合SS,以及一个非负整数xx,定义函数fS(x)f_S(x)为$\\displaystyle f_S(x)=\\min_{(a, b) \\in S} \\left| \\left| x-a \\right| - b \\right|$。

我们有一组非负整数对的集合TT。最初,T=lbrace(A,B)rbraceT=\\lbrace (A, B)\\rbrace

进行QQ次查询。第ii个查询给出三个非负整数tit_iaia_ibib_i,并要求你执行以下操作:

  • 如果ti=1t_i=1,则将非负整数对(ai,bi)(a_i, b_i)添加到TT中。
  • 如果ti=2t_i=2,则计算满足aileqxleqbia_i \\leq x \\leq b_i的非负整数xxfT(x)f_{T}(x)的最小值。

约束条件

  • 1leqQleq2times1051 \\leq Q \\leq 2 \\times 10^5
  • 0leqA,Bleq1090 \\leq A,B \\leq 10^{9}
  • tit_i1122
  • 0leqai,bileq1090 \\leq a_i,b_i \\leq 10^{9}
  • 如果ti=2t_i=2,则aileqbia_i \\leq b_i
  • 至少存在一个具有ti=2t_i=2的查询。
  • 输入中的所有值都是整数。

输入

输入以以下格式从标准输入给出:

QQ AA BB t1t_1 a1a_1 b1b_1 t2t_2 a2a_2 b2b_2 vdots\\vdots tQt_Q aQa_Q bQb_Q

输出

按照给定顺序,对每个具有ti=2t_i=2的查询,在单独的一行上打印答案。


示例输入1

4 0 5
1 3 11
2 7 8
1 8 2
2 8 9

示例输出1

2
1

在第二个查询中,T=lbrace(0,5),(3,11)rbraceT=\\lbrace(0, 5), (3, 11) \\rbrace。对于x=7x=7,我们有$f_T(7)=\\min \\lbrace \\left| \\left|7-0\\right|-5\\right|, \\left| \\left|7-3\\right|-11\\right| \\rbrace=\\min \\lbrace 2, 7 \\rbrace=2$。类似地,fT(8)=3f_T(8)=3。因此,答案是minlbrace2,3rbrace=2\min \\lbrace 2, 3 \\rbrace =2

在第四个查询中,T=lbrace(0,5),(3,11),(8,2)rbraceT=\\lbrace(0, 5), (3, 11), (8, 2) \\rbrace。在8leqxleq98 \\leq x \\leq 9范围内,fT(x)f_T(x)x=9x=9处取得最小值fT(9)=1f_T(9)=1


示例输入2

2 1 2
1 2 3
2 2 6

示例输出2

0

示例输入3

20 795629912 123625148
2 860243184 892786970
2 645778367 668513124
1 531411849 174630323
1 635062977 195695960
2 382061637 411843651
1 585964296 589553566
1 310118888 68936560
1 525351160 858166280
2 395304415 429823333
2 583145399 703645715
2 97768492 218377432
1 707220749 459967102
1 210842017 363390878
2 489541834 553583525
2 731279777 811513313
1 549864943 493384741
1 815378318 826084592
2 369622093 374205455
1 78240781 821999998
2 241667193 243982581

示例输出3

26468090
3491640
25280111
9543684
0
22804896
20649370
19245624
4849993
484865