Gūtie punkti

Gūtie punkti

vidēji grūts
Latvijas Informātikas olimpiādes logo
Uzdevums no Latvijas 37. (2023./2024. m. g.) informātikas olimpiādes (LIO) skolas kārtas.

Stāsts

Mums nepazīstamas sporta spēles turnīrā piedalās NN dalībnieki, kas sanumurēti pēc kārtas ar naturāliem skaitļiem no 11 līdz NN. Turnīra sākumā visiem spēlētājiem ir nulle punktu. Tiek izspēlētas SS spēles, kur katrā kādi divi spēlētāji tiekas savā starpā, un ir zināmi spēļu rezultāti to notikšanas secībā. Katra spēle ir ar 00 punktu summu – viens spēlētājs iegūst XX punktus, bet otrais zaudē XX punktus.

Turnīra beigās jāatbild uz QQ vaicājumiem. Ir iespējami četri vaicājumu veidi:

  1. Cik punktu turnīra beigās ir ieguvis dalībnieks DD?
  2. Cik reižu turnīra laikā dalībnieks DD ir sasniedzis personīgo punktu rekordu (sasniedzis jaunu punktu maksimumu)?
  3. Cik dalībniekiem turnīra beigās ir vairāk par pp punktiem?
  4. Turnīra spēles skatījās spēlētāja DD līdzjutējs. Katru reizi, kad līdzjutējs apskatīja spēlētāja DD rezultātu, tas bija lielāks nekā iepriekš (vai 0 turnīra sākumā). Kādu lielāko reižu skaits līdzjutējs varēja būt apskatījis spēlētāja DD rezultātu?

Uzrakstiet datorprogrammu, kas ielasa spēļu rezultātus un atbild uz vaicājumiem.

Ievaddati

Ievaddatu vienīgajā rindā dotas trīs naturālu skaitļu – turnīra dalībnieku skaita NN (2N2105)(2 \leq N \leq 2 \cdot 10^5), spēļu skaita SS (S2105)(S \leq 2 \cdot 10^5) un vaicājumu skaita QQ (Q2105)(Q \leq 2 \cdot 10^5) vērtības.

Nākamajās SS ievaddatu rindās doti spēļu rezultāti, un katrā no tām ir trīs naturāli skaitļi – uzvarējušā spēlētāja numurs AA (1AN)(1 \leq A \leq N), zaudējušā spēlētāja numurs BB (1BN)(1 \leq B \leq N) un uzvarējušā spēlētāja iegūto punktu skaits XX (1X109)(1 \leq X \leq 10^9). Garantēts, ka ABA \neq B.

Nākamajās QQ ievaddatu rindās dots vaicājumu apraksts, un katrā no tām ir divi naturāli skaitļi. Pirmais skaitlis ir vaicājuma veids vv (1v4)(1 \leq v \leq 4), bet otrais ir atkarīgs no vaicājuma veida:

  • Dalībnieka numurs DD (1DN)(1 \leq D \leq N) pirmā, otrā un ceturtā veida vaicājumam;
  • Punktu skaits pp (109p109)(-10^9 \leq p \leq 10^9) trešā veida vaicājumam.

Starpp katriem diviem blakus skaitļiem ievaddatos ir tukšumzīme.

Izvaddati

Izvaddatiem jāsatur QQ rindas. Katram ii (1iQ)(1 \leq i \leq Q) izvaddatu ii-tajā rindā jābūt veselam skaitlim – atbildei uz pēc kārtas ii-to vaicājumu.

Piemēri

Ievaddati

4 5 3 1 2 7 3 2 3 2 3 9 3 1 4 4 2 1 1 1 1 2 1 4 Kopēt kodu

Izvaddati

3 -2 1 Kopēt kodu

Piezīme:

Pēc visām spēlēm spēlētājiem 1, 2, 3, 4 punktu skaits bija attiecīgi: 3 -2 -2 1.

Ievaddati

3 4 3 1 2 1 3 1 2 1 2 4 2 1 3 2 3 2 2 2 1 Kopēt kodu

Izvaddati

1 0 2 Kopēt kodu

Piezīme:

Pirmajam spēlētājam punktu skaits spēļu laikā bija: 0 1 -1 3 0, un jaunu rekordu viņš ieguva divas reizes - pēc 1. spēles rekords 1 punkts un pēc 3. spēles rekords 3 punkti.

Ievaddati

4 7 4 3 1 4 2 4 8 1 3 2 4 1 6 1 2 5 4 1 2 3 2 1 3 0 3 -3 3 2 3 7 Kopēt kodu

Izvaddati

2 3 1 0 Kopēt kodu

Piezīme:

Pēc visām spēlēm spēlētājiem 1, 2, 3, 4 punktu skaits bija attiecīgi: -5 2 3 0. Otrajā vaicājumā atbilde ir 3, jo trim spēlētājiem ir vairāk par -3 punktiem.

Ievaddati

3 5 3 1 3 4 3 1 2 3 2 3 1 2 1 3 1 2 4 1 4 3 4 2 Kopēt kodu

Izvaddati

3 3 1Kopēt kodu

Piezīme:

Trešajam spēlētājam punktu skaits spēļu laikā bija 0 -4 -2 1 1 3. Šajā gadījumā līdzjutējs apskatīja spēlētāja rezultātu spēles sākumā un pēc 3. un 5. spēlēm, redzot punktus 0 1 3.

Izpildes resursu ierobežojumi

CPU izpildes laiks uz testu: 2 sekundes.
RAM atmiņas apjoms uz testu: 256 megabaiti.

Apakšuzdevumi un to vērtēšana

#Apraksts un ierobežojumiPunkti
1.

Uzdevuma tekstā dotie četri testi

2
2.

N,S,Q1000N, S, Q \leq 1000, tikai 1. veida vaicājumi

8
3.

Tikai 1. veida vaicājumi

10
4.

N,S,Q1000N, S, Q \leq 1000, tikai 2. veida vaicājumi

10
5.

Tikai 2. veida vaicājumi

15
6.

N,S,Q1000N, S, Q \leq 1000, tikai 4. veida vaicājumi

10
7.

Tikai 3. veida vaicājumi

15
8.

N,S,Q10N, S, Q \leq 10, tikai 4. veida vaicājumi

5
9.

N,S,Q1000N, S, Q \leq 1000, tikai 4. veida vaicājumi

10
10.

Tikai 4. veida vaicājumi

15
Apakšuzdevumu punktu summa = 100.

1. apakšuzdevuma ievaddati

8 8 6 1 3 6 6 4 5 1 8 9 4 2 8 6 1 4 3 6 2 7 1 9 6 2 8 1 1 1 3 1 7 1 4 1 8 1 2 Kopēt kodu
7 8 6 4 1 3 3 2 1 6 1 5 7 3 1 2 4 10 5 6 6 6 1 10 2 3 2 2 3 2 1 2 4 2 2 2 6 2 5 Kopēt kodu
7 7 6 7 5 8 3 5 2 6 1 10 4 2 8 5 2 10 6 1 10 7 4 4 3 2 3 -2 3 9 3 3 3 -10 3 -5 Kopēt kodu
8 9 6 6 2 4 1 5 4 5 7 8 7 1 4 6 2 9 7 8 9 1 5 9 1 6 10 7 2 3 4 4 4 6 4 3 4 5 4 8 4 1 Kopēt kodu