Müəyyən bir müstəvidə nöqtələr çoxluğu və bu çoxluğu dəyişdirən əməliyyat verilir. Hər bir əməliyyat aşağıdakı iki tipdən biri ola bilər:
Tam ədədi koordinatlı bir nöqtə çoxluğa əlavə edilir. Yeni nöqtənin koordinatı artıq çoxluqda olan bütün nöqtələrin koordinatlarından mütləq böyük olmalıdır.
Çoxluqdakı koordinatı ən böyük olan nöqtə silinir.
Bu əməliyyatı simulyasiya edən və hər əməliyyatdan sonra nöqtələr çoxluğunun konveks örtüyünün ikiqat sahəsini çıxışa verən proqram yazın. Əvvəlcə nöqtələr çoxluğu boşdur. Qəbul edin ki, boş çoxluq üçün konveks örtüyün sahəsi sıfırdır.
Bir çoxluğun konveks örtüyü — həmin çoxluğun bütün nöqtələrini əhatə edən ən kiçik konveks çoxbucaqlıdır. Çoxbucaq konveksdir, əgər onun istənilən iki nöqtəsini birləşdirən parça tamamilə həmin çoxbucağın daxilində yerləşirsə. Burada çoxbucağın özü həm daxili hissəsini, həm də sərhədini əhatə edir.
Birinci sətirdə bir tam ədəd var: (1 \leq N \leq 100\,000) — yerinə yetiriləcək əməliyyatların sayı. Sonrakı sətirin hər birində üç tam ədəd verilib, əməliyyatlar kodlaşdırılmış formadadır. -ci əməliyyatın parametrlərini tapmaq üçün (i + 1)-ci sətirdən üç tam ədəd T^*, X^* və Y^* (0 \leq T^* \leq 1,\ 0 \leq X^*, Y^* \leq 2\,000\,000\,000) oxuyun, sonra qiymətini aşağıdakı düsturla hesablayın:
burada — əməliyyat yerinə yetirilməzdən əvvəl nöqtələrin konveks örtüyünün ikiqat sahəsidir. Zəmanət verilir ki, həmişə tam ədəddir.
Əgər T = 0-dırsa, cari əməliyyat birinci tipdədir və yeni nöqtənin (X, Y) koordinatları aşağıdakı kimi hesablanır:
X = L + ((S + X^*) \bmod 2\,000\,000\,001),
Y = ((Y^* + S) \bmod 2\,000\,000\,001) - 1\,000\,000\,000.
Burada çoxluqdakı bütün nöqtələrin maksimum koordinatıdır. Əgər çoxluq boşdursa, onda L = -1\,000\,000\,000.
Əgər T = 1-dirsə, ikinci tip əməliyyatı dəfə yerinə yetirin. aşağıdakı düsturla müəyyən olunur:
Burada - çoxluqdakı nöqtələrin sayıdır.
Zəmanət verilir ki, bütün əməliyyatlar düzgün deşifrovka olunduqda aşağıdakı şərtlər təmin olunur:
Çoxluğa əlavə olunan bütün nöqtələrin koordinatlarının modulu 1\,000\,000\,000-dan böyük deyil.
Yeni nöqtə əlavə olunduqda onun koordinatı artıq çoxluqda olan bütün nöqtələrin koordinatlarından mütləq böyükdür.
Silmə əməliyyatı yalnız qeyri-boş çoxluğa tətbiq edilir.
Dəqiq sətir çap edin. -ci sətirə, ilk əməliyyatdan sonra alınan nöqtələr çoxluğunun konveks örtüyünün ikiqat sahəsini çıxışa verin. Əgər nöqtələr çoxluğu boşdursa, qəbul edin ki, onun konveks örtüyünün sahəsi -dır.
Nümunə 1
Deşifrovkadan sonra test belə olacaq:
T = 0,\ X = 0,\ Y = 0
T = 0,\ X = 1\,000\,000,\ Y = 1\,000\,000
T = 0,\ X = 2\,000\,000,\ Y = -1\,000\,000
T = 0,\ X = 3\,000\,000,\ Y = 0
T = 1,\ K = 1
T = 1,\ K = 2
Testlər ayrıca blokdan ibarətdir və bunlara əlavə məhdudiyyətlər qoyulub:
testlər: N \leq 300
testlər: N \leq 3\,000
testlər: N \leq 100\,000, burada deşifrovkadan sonra T = 1 olan sətirlərin sayı -dən çox deyil
testlər: N \leq 100\,000