Levko and Array Recovery masalasi yechimi

Revision en19, by Muhammad_Rahimov, 2017-07-28 17:51:26

Masala Tarjimasi:

Levko massivlar bilan o'ynashni yaxshi ko'rar ekan. Unda a1, a2, a3 ... an ko'rinishidagi massiv bor ekan. U massiv bilan o'ynash davomida, shu massiv ustida 2 xil amal bajarar ekan.

Bu amallar:
1. Birinchi turdagi amal bu: massivdagi indekslari L dan R gacha bo'lgan elementlarni D ga oshirish. ya'ni dasturlash tili bilan aytganda:

for(int i = L; i<=R; i++)
    a[i]+=D;
  1. Ikkinchi turdagi amal: massivdagi indekslari L dan R gacha bo'lgan elementlar ichidan maksimalini topish.
for(int i = L; i<=R; i++)
   mx = max(mx, a[i]);

Levko sevimli massivini yo'qotib qo'yibdi shuning uchun u sizdan yordam so'rayapdi. Unda faqat massiv ustida bajarilgan amallar ro'yhati bor holos. Levkoga massivni tiklashda yordam bering.

Kiruvchi ma'lumotlar:

Birinchi bo'lib bizga n va m ketma ket kiritiladi.

n -> massiv elementlari soni; 1<=n<=5000
m -> massiv ustida bajarilgan amallar soni; 1<=m<=5000

Keyingi m qatorda quyidagi tartibda ma'lumotlar kiritiladi:
1. t -> bajarilgan operatsiya tipi. Agar t = 1 bo'lsa u holda birinchi turdagi amal bajarilgan(qo'shish), agar t = 2 bo'lsa ikkinchi turdagi amal bajarilgan(maksimal topish). 1<=t<=2
2. l -> chap chegara 1<=l<=n
3. r -> o'ng chegara 1<=r<=n
4. d yoki m -> bajarilayotgan amal turiga qarap, agar birinchi turdagi amal bo'lsa qo'shilayotgan son, agar ikkinchi turdagi amal bo'lsa topilgan maksimal son.

Chiquvchi ma'lumotlar:

YES -> agar yechim bo'lsa
NO -> agar yechim bo'lmasa
Agar yechim bo'lsa YES yozuvi ostida massiv elementlari chiqarilsin. Massiv elementlari modul jihatda 1e9 dan oshmaydi. |ai|<=1e9

O'zlaringizda g'oya chiqarib ishlashga urinib ko'ringlar!!! Agar bo'lmasa quyidagi yechimda foydalaninglar.

Masala Yechimi:

yechimi

History

 
 
 
 
Revisions
 
 
  Rev. Lang. By When Δ Comment
en19 English Muhammad_Rahimov 2017-07-28 17:51:26 0 (published)
en18 English Muhammad_Rahimov 2017-07-28 17:51:11 207 (saved to drafts)
en17 English Muhammad_Rahimov 2017-07-28 17:31:12 0 (published)
en16 English Muhammad_Rahimov 2017-07-28 17:30:41 102
en15 English Muhammad_Rahimov 2017-07-28 17:29:41 90 Tiny change: '"<<endl;\n ' -> '"<<endl;\n\n '
en14 English Muhammad_Rahimov 2017-07-28 17:25:03 1118
en13 English Muhammad_Rahimov 2017-07-28 17:21:36 140
en12 English Muhammad_Rahimov 2017-07-28 17:18:07 10 Tiny change: 'od">\n\n</kod>\n\n</spo' -> 'od">\n\n</spoiler>\n\n</spo'
en11 English Muhammad_Rahimov 2017-07-28 17:17:25 1204
en10 English Muhammad_Rahimov 2017-07-28 16:43:42 642
en9 English Muhammad_Rahimov 2017-07-28 16:33:38 556
en8 English Muhammad_Rahimov 2017-07-28 16:29:02 254
en7 English Muhammad_Rahimov 2017-07-28 16:26:45 32
en6 English Muhammad_Rahimov 2017-07-28 16:26:04 381
en5 English Muhammad_Rahimov 2017-07-28 16:23:10 156
en4 English Muhammad_Rahimov 2017-07-28 16:01:28 2 Tiny change: 'ytganda:\n<pre>\n<' -> 'ytganda:\n\n<pre>\n<'
en3 English Muhammad_Rahimov 2017-07-28 15:59:10 141 Tiny change: ' aytganda:<br>\n<pre>\n<' -> ' aytganda:\n<pre>\n<'
en2 English Muhammad_Rahimov 2017-07-28 15:54:16 1009
en1 English Muhammad_Rahimov 2017-07-28 15:43:47 691 Initial revision (saved to drafts)