Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
PRZEDZIALPUNKT - Drzewo przedziałowe przedział-punkt |
Napisz program, który wczyta liczbę operacji, a następnie wykona operacje aktualizacji wartości na przedziale oraz zapytań o wartość w punkcie.
Input
W pierwszym wierszu jedna liczba całkowita q (1 ≤ q ≤ 100 000) – liczba operacji.
W kolejnych q wierszach znajdują się operacje w jednym z dwóch formatów:
1 a b x
– dodaj wartośćx
do wszystkich elementów w przedziale[a, b]
2 p
– wypisz wartość elementu na pozycjip
Wszystkie indeksy a
, b
, p
są w zakresie 0 ≤ a ≤ b ≤ 1 000 000
.
Output
Dla każdego zapytania typu 2
wypisz wartość w osobnej linii.
Example
Input: 5 1 0 2 5 2 1 1 1 1 3 2 0 2 1 Output: 5 5 8
Dodane przez: | Marcin Kasprowicz |
Data dodania: | 2025-04-16 |
Limit czasu wykonania programu: | 1s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | All except: ASM32-GCC MAWK BC C-CLANG NCSHARP CPP14-CLANG COBOL COFFEE D-CLANG D-DMD ELIXIR FANTOM FORTH GOSU GRV JS-MONKEY JULIA KTLN NIM OBJC OBJC-CLANG OCT PICO PROLOG R RACKET RUST SCM qobi CHICKEN SQLITE SWIFT UNLAMBDA VB.NET |