Universal Cup Judging System

Universal Cup

حد الوقت: 4.0 s حد الذاكرة: 1024 MB مجموع النقاط: 100 قابلة للهجوم ✓
الإحصائيات

Efter uttagningen till provinslaget föll White in i en lång period av besvikelse. Hon kunde inte finna något hopp i sina resultat. Trots det fortsatte White sin sista träning inför NOI. Utöver sin vanliga träning började hon också utforska ämnen som hon aldrig hade haft chansen att lära sig under sina OI-dagar — i hopp om att det, innan hon tog farväl, inte skulle finnas något mer att ångra.

White skakade av sig sina vandrande tankar och fokuserade plötsligt på ett problem framför sig, ett enkelt och tråkigt datastrukturproblem —

White har en talföljd av $n$ heltal $a_1, a_2, \dots, a_n$. Hon kommer att utföra $q$ operationer på denna talföljd. Varje operation är av en av följande tre typer:

  • 1 l r v — Addera $v$ till varje element i intervallet $[l, r]$.
  • 2 l r v — Tilldela varje element i intervallet $[l, r]$ värdet $v$.
  • 3 l r — Fråga efter värdet $\sum_{i=l}^r (\min_{j=l}^i a_j) \times (\max_{j=l}^i a_j)$ modulo $2^{64}$.

Din uppgift är att simulera alla operationer och skriva ut resultaten av alla frågor.

Indata

Den första raden i indatan innehåller två heltal $n, q$ ($1 \le n, q \le 2 \times 10^5$), som representerar antalet element och antalet operationer.

Den andra raden innehåller $n$ heltal $a_1, a_2, \cdots, a_n$ ($0 \le a_i \le 10^9$), som representerar de ursprungliga elementen.

Var och en av de följande $q$ raderna beskriver en operation i ett av de tre formaten:

  • 1 l r v ($1 \le l \le r \le n, -10^9 \le v \le 10^9$), som representerar additionsoperationen.
  • 2 l r v ($1 \le l \le r \le n, 1 \le v \le 10^9$), som representerar tilldelningsoperationen.
  • 3 l r ($1 \le l \le r \le n$), som representerar frågeoperationen.

Det garanteras att $0 \le a_i \le 10^9$ för varje $1 \le i \le n$ under hela processen.

Utdata

För varje frågeoperation, skriv ut ett heltal på en egen rad — resultatet av frågan modulo $2^{64}$.

Exempel

Indata

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

Indata

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

Förklaring

I det första testfallet:

Den ursprungliga talföljden är 2 3 5 4 1. Efter den tredje operationen blir den 2 3 2 2 1, och efter den sjätte operationen blir den 7 8 7 7 6.

För den första frågan är 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$.

För den andra frågan är 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.