Universal Cup Judging System

Universal Cup

Limite de temps : 4.0 s Limite de mémoire : 1024 MB Points totaux : 100 Hackable ✓
Statistiques

Etter uttaket til provinslaget falt White inn i en lang periode med skuffelse. Hun klarte ikke å finne noe håp i resultatene sine. Likevel fortsatte White den siste treningen før NOI. I tillegg til den vanlige treningen begynte hun også å utforske emner hun aldri hadde hatt sjansen til å lære i løpet av OI-dagene sine — i håp om at det, før hun tok farvel, ikke ville være noe mer å angre på.

White ristet av seg de vandrende tankene og fokuserte plutselig på et problem foran seg, et enkelt og kjedelig datastrukturproblem —

White har en følge av $n$ heltall $a_1, a_2, \dots, a_n$. Hun vil utføre $q$ operasjoner på denne følgen. Hver operasjon er av én av følgende tre typer:

  • 1 l r v — Legg til $v$ til hvert element i intervallet $[l, r]$.
  • 2 l r v — Sett hvert element i intervallet $[l, r]$ til $v$.
  • 3 l r — Spør om verdien $\sum_{i=l}^r (\min_{j=l}^i a_j) \times (\max_{j=l}^i a_j)$ modulo $2^{64}$.

Din oppgave er å simulere alle operasjoner og skrive ut resultatene av alle spørringer.

Inndata

Den første linjen i inndataene inneholder to heltall $n, q$ ($1 \le n, q \le 2 \times 10^5$), som representerer antall elementer og antall operasjoner.

Den andre linjen inneholder $n$ heltall $a_1, a_2, \cdots, a_n$ ($0 \le a_i \le 10^9$), som representerer startelementene.

Hver av de neste $q$ linjene beskriver en operasjon, i ett av de tre formatene:

  • 1 l r v ($1 \le l \le r \le n, -10^9 \le v \le 10^9$), som representerer addisjonsoperasjonen.
  • 2 l r v ($1 \le l \le r \le n, 1 \le v \le 10^9$), som representerer tilordningsoperasjonen.
  • 3 l r ($1 \le l \le r \le n$), som representerer spørreoperasjonen.

Det garanteres at $0 \le a_i \le 10^9$ for hver $1 \le i \le n$ gjennom hele prosessen.

Utdata

For hver spørreoperasjon skal du skrive ut et heltall på én enkelt linje — resultatet av spørringen modulo $2^{64}$.

Eksempler

Inndata

5 8
2 3 5 4 1
3 1 5
3 2 4
2 4 5 2
3 1 5
3 2 4
1 1 2 5
3 1 5
3 2 4

Utdata

35
39
40
34
177
120

Inndata

10 20
1 2 3 4 5 6 7 8 9 10
1 1 10 1
3 1 5
3 2 9
3 8 10
1 2 5 10
3 1 5
3 2 9
3 8 10
1 5 9 -5
3 1 5
3 2 9
3 8 10
1 2 5 -10
3 1 5
3 2 9
3 8 10
1 5 9 5
3 1 5
3 2 9
3 8 10

Utdata

40
156
270
120
1202
270
118
831
80
33
61
80
40
156
270

Forklaring

I det første testtilfellet:

Den opprinnelige følgen er 2 3 5 4 1. Etter den tredje operasjonen blir den 2 3 2 2 1, og etter den sjette operasjonen blir den 7 8 7 7 6.

For den første spørringen er svaret $\sum_{i=1}^5 (\min_{j=1}^i a_j) \times (\max_{j=1}^i a_j) = 2 \times 2 + 2 \times 3 + 2 \times 5 + 2 \times 5 + 1 \times 5 = 35$.

For den andre spørringen er svaret $\sum_{i=2}^4 (\min_{j=2}^i a_j) \times (\max_{j=2}^i a_j) = 3 \times 3 + 3 \times 5 + 3 \times 5 = 39$.

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.