Lista de probleme 4

Etichete

#2867 Norela

Adrian al III-lea este un prinț vrăjitor. De 4 noiembrie, ziua vrăjitoriei, acesta a vrut să o impresioneze pe Norela, fata visurilor lui. El are n cărți de joc, care inițial se află înșirate pe o masă cu fața în jos. Adrian are la dispoziție m magii, o magie fiind de forma: q a1 a2 …, aq. În timpul unei magii, se vor întoarce pe rând şi în ordine cărțile cu indicii a1 a2 …, aq. (numerele sunt distincte două câte două). Cartea va fi întoarsă indiferent dacă aceasta se află cu fața în sus sau cu fața în jos (dacă este cu fața în sus, se va întoarce cu fața în jos, iar dacă este cu fața în jos se va întoarce cu fața în sus), iar fiecare magie poate fi utilizată maxim o dată. Ajutați-l pe Adrian să o impresioneze pe Norela înaintea dușmanului său, Manea cel Sprâncenat! Aflați numărul minim de magii ce trebuie folosite, astfel încât la final toate cărțile să fie cu fața în sus. De asemenea, spuneți și care magii au fost folosite. În cazul în care există mai multe soluții, se va afișa cea minim lexicografică.

#3226 shell

Florin este iar în Drobeta-Turnu Severin. Din păcate nu a scăpat de hoții de buzunare care îi cauzează atâtea probleme! Aceștia l-au urmărit chiar și aici! Cu toate acestea, el a aflat cum poate sa scape de ei. Drobeta-Turnu Severin este un oraș sub forma de un graf orientat aciclic cu n noduri și m muchii. Pentru ca hoții să îi piardă urma, Florin (care se află în nodul 1) trebuie să ajungă în nodul n pe un anumit traseu. El a reușit să obțină o listă A cu p noduri. În drumul său de la 1 la n el trebuie sa parcurgă aceste p noduri în ordinea în care sunt date, altfel acesta nu va scăpa de hoți! Aflați numărul de trasee posibile de la 1 la n astfel încât să se treacă prin cele p noduri în ordinea în care sunt date. Pentru că rezultatul poate fi foarte mare, se va afișa restul împărțirii acestuia la 1.000.000.007.

Aleku Turcul este la ora de matematica. În timp ce el încearcă să-și dea seama dacă 1+1=2, profesorul scrie pe tablă o problemă ceva mai complicată. Se dau Q queryuri și o listă S cu P elemente egale cu 0. Notăm cu A un șir, care inițial este vid. Queryurile pot fi de forma:
- 0 x (inserează valoarea x în A)
- 1 x (șterge valoarea x din A; se garantează că există cel puțin o valoare de x în A)
Se garantează că A nu va fi niciodată vid după vreun query. După fiecare query profesorul îi pune lui Aleku următoarea întrebare: oare pot așeza în lista S toate numerele din A (nu neapărat în ordinea în care se află în A) astfel încât:

  • elementele din A se vor așeza în S pe poziții distincte, restul pozițiilor din S fiind ocupate de elemente cu valoarea 0
  • fie S[i] un element nenul din S și S[j] cel mai apropiat element nenul care se află în stânga lui S[i] în S. Atunci următoarea condiție trebuie respectată: i - j ≥ S[i]
  • fie f poziția celui mai din stânga element nenul din S. Atunci f ≥ S[f].

Dacă răspunsul la întrebarea profesorului este da, atunci să se spună și câte configurații diferite se pot obține. Deoarece răspunsul la întrebare poate fi foarte mare, acesta se va afișa modulo 1.000.000.007. Dacă răspunsul este nu, se va afișa -1.
Ajutați-l pe Aleku sa răspundă corect la întrebările profesorului pentru ca sa obțină nota 10. Media lui depinde de aceasta!

Interviul de admitere la prestigioasa Universitate Cambridge constă în N probleme, numerotate de la 1 la N. Alex este în momentul acesta acolo, așteptând să susțină interviul. Takahiro Wong, care tocmai a ieșit din examen, a rezolvat toate problemele, problema i rezolvând-o după Di secunde de la începerea interviului. Cunoscând ca poate rezolva fiecare problema i în Ti secunde, Alex, panicat din fire, își pune M întrebări de forma: x y. Pentru fiecare întrebare, Alex vrea să afle dacă poate rezolva fiecare problemă din intervalul [x;y] înaintea lui Takahiro Wong (Alex poate rezolva problemele din intervalul [x;y] în ce ordine dorește). Ajutați-l pe Alex să răspundă corect la cele M întrebări pentru a nu intra panicat la interviu.

info(1)cup 2018, Runda națională