Laiko ribojimas: 3s
Atminties ribojimas: 256MB
Duomenų failas: daugiau_uzklausu.in
Rezultatų failas: daugiau_uzklausu.out
Sudėtingos užklausos
Jūs turite masyvą, sudarytą iš sveikųjų skaičių , , , ..., . Jūsų uždavinys - įvykdyti užklausų turimai skaičių sekai.
Užklausos gali būti trijų tipų:
- Nustatymo užklausa: sekos elementams nustatyti reikšmę .
- Pridėjimo užklausa: prie sekos elementų pridėti skaičių .
- Sumos užklausa: apskaičiuoti elementų kvadratų sumą.
Pradiniai duomenys
Pirmoje eilutėje pateiktas testų skaičius (). Sekančiose eilutėse pateikiami testų duomenys.
Testo duomenys:
Pirmoje eilutėje pateikti du skaičiai ir (), atitinkamai nurodantys masyvo elementų skaičių bei užklausų kiekį.
Antroje eilutėje pateikta skaičių : pradinės elementų reikšmės. .
Kitose eilučių pateikti užklausų duomenys: Skaičius - užklausos tipas ('0', '1' arba '2').
Jei yra 0
, tai toje eilutėje toliau yra trys skaičiai: - nustatymo užklausos intervalo pradžia, pabaiga, ir elementams nustatoma reikšmė ().
Jei yra 1
, tai toje eilutėje toliau yra trys skaičiai: - pridėjimo užklausos intervalo pradžia, pabaiga, ir elementams pridedama reikšmė ().
Jei yra 2
, tai toje eilutėje taip pat yra du skaičiai ir - sumuojamo intervalo pradžia ir pabaiga ().
Rezultatai
Kiekvienai 2
tipo užklausai išveskite prašomų elementų kvadratų sumą.
Pavyzdžiai
Pradiniai duomenys | Rezultatai |
---|---|
2 4 5 1 2 3 4 2 1 4 0 3 4 1 2 1 4 1 3 4 1 2 1 4 1 1 1 2 1 1 |
Testas 1: 30 7 13 Testas 2: 1 |
Pastaba: Kvadratų sumos niekada neviršys