Laiko ribojimas: 1s
Atminties ribojimas: 1024MB
Duomenų failas: segment_tree.in
Rezultatų failas: segment_tree.out
Masyvo užklausos
Jūs turite masyvą, sudarytą iš sveikųjų skaičių , , , ..., . Jūsų uždavinys - įvykdyti užklausų turimam skaičių sekai.
Užklausos gali būti dviejų tipų:
- Sumos užklausa: apskaičiuoti visų į intervalą įeinančių elementų sumą.
- Pridėjimo užklausa: Prie sekos elemento esančio indekse pridėti skaičių .
Pradiniai duomenys
Pirmoje eilutėje pateikti du skaičiai () ir () atitinkamai nurodantys masyvo elementų skaičių bei užklausų kiekį.
Antroje eilutėje pateikta masyvo skaičių .
Kitose kiekvienoje eilučių pateikti užklausų duomenys - užklausos tipą, , bei . Jei , tai turi būti atliekama sumos užklausa, jei , tai turi būti atliekama pridėjimo užklausa.
Pastaba: masyvo indeksai skaičiuojami nuo .
Rezultatai
Kiekvienai sumos tipo užklausai išvesti užklausos rezultatą.
Pavyzdžiai
Pradiniai duomenys | Rezultatai |
---|---|
5 5 1 2 1 2 2 + 2 2 + 3 4 ? 2 4 ? 1 2 + 2 1 |
11 5 |