Опук qabıq (sorğular)
Verilmiş müstəvi üzərində bir 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 növdən biri ola bilər:
Çoxluğa tam koordinatlı bir nöqtə əlavə edin. Bu zaman yeni nöqtənin absissası (yəni koordinatı) artıq çoxluqda olan bütün digər nöqtələrin absissalarından mütləq böyük olmalıdır.
Çoxluqdan ən böyük absissalı nöqtəni silin.
Verilmiş əməliyyat ardıcıllığına əsasən, onların icrasını modelləşdirən və hər bir əməliyyatdan sonra çoxluqdakı nöqtələrin konveks qabığının ikiqat sahəsini çıxaran bir proqram yazın. İlk əməliyyatın icrasından əvvəl nöqtələr çoxluğu boşdur. Boş nöqtələr çoxluğunun konveks qabığının sahəsinin sıfır olduğunu qəbul edək.
Müstəvi üzərində nöqtələr çoxluğunun konveks qabığı, çoxluqdakı bütün nöqtələri əhatə edən ən kiçik sahəli konveks çoxbucaqlıdır. Çoxbucaq konveks adlanır, əgər onun istənilən iki nöqtəsini birləşdirən seqment tamamilə həmin çoxbucağa aid olarsa. Burada çoxbucaq dedikdə, fiqurun sərhədi və onun daxili nəzərdə tutulur.
Giriş verilənləri
Birinci sətir bir tam ədəd ehtiva edir: – icra olunmalı əməliyyatların sayı. Növbəti sətir hər biri üç tam ədəd ehtiva edir – şifrlənmiş formatda əməliyyatlar haqqında məlumat. nömrəli əməliyyatın parametrlərini əldə etmək üçün -ci sətirdən üç tam ədəd , və oxumaq lazımdır, sonra isə ədədini aşağıdakı düsturla əldə etmək lazımdır: , burada – nömrəli əməliyyatın icrasından əvvəl çoxluqdakı nöqtələrin konveks qabığının ikiqat sahəsidir. -in həmişə tam ədəd olduğuna əmin ola bilərsiniz.
Əgər olarsa, növbəti əməliyyat birinci tipdədir və yeni nöqtənin koordinatları aşağıdakı düsturlarla əldə edilir:
,
.
Burada – çoxluqdakı bütün nöqtələrin absissalarının maksimumudur. Əgər çoxluq boşdursa, onda .
Əgər olarsa, ikinci tip əməliyyatı dəfə icra etmək lazımdır. ədədi aşağıdakı düsturla tapılır: . Burada – çoxluqdakı nöqtələrin sayıdır.
Doğru şifrələmə ilə bütün əməliyyatların icrası zamanı aşağıdakı məhdudiyyətlər təmin edilir:
Çoxluğa əlavə edilən bütün nöqtələrin koordinatları modul üzrə -dan çox deyil.
Yeni nöqtə əlavə edilərkən onun absissası artıq çoxluqda olan bütün nöqtələrin absissalarından mütləq böyükdür.
Silmə əməliyyatı yalnız boş olmayan nöqtələr çoxluğuna tətbiq edilir.
Çıxış verilənləri
Dəqiq sətir çıxarılmalıdır. nömrəli sətirdə, ilk əməliyyatın icrasından sonra yaranan nöqtələr çoxluğunun konveks qabığının ikiqat sahəsi çıxarılmalıdır. Əgər nöqtələr çoxluğu boşdursa, onun konveks qabığının sahəsini sıfır hesab edin.
Nümunələr
Qeyd
Şifrələmədən sonra test belə görünür:
Qiymətləndirmə
Test dəsti 4 ayrı blokdan ibarətdir, əlavə məhdudiyyətlərlə:
15% testlər:
15% testlər:
20% testlər , olan sətirlərin sayı (şifrələmədən sonra) 100-dən çox deyil
50% testlər: