Diferente pentru problema/papagali intre reviziile #18 si #30

Diferente intre titluri:

papagali
Papagali

Diferente intre continut:

== include(page="template/taskheader" task_id="papagali") ==
În ciuda aparenţelor, Kokalaru47 este un mare iubitor al animalelor, în special al papagalilor. El deţine $N$ papagali aparţinând unui număr de $K$ specii, câte $A{~i~}$ papagali din specia $i$. Se garantează că ai este par. El doreşte să îşi extindă colecţia cât mai curând.
În ciuda aparenţelor, $K0kalaru47$ este un mare iubitor al animalelor, în special al papagalilor. El deţine $N$ papagali aparţinând unui număr de $K$ specii, câte $A{~i~}$ papagali din specia $i$. Se garantează că $A{~i~}$ este par. El doreşte să îşi extindă colecţia cât mai curând.
Kokalaru47 are $Q$ planuri de a-şi extinde colecţia. Pentru fiecare plan $i$, el îşi doreşte să achiziţioneze $X{~i~}$ papagali noi, aparţinând celor $K$ specii. El va face acest lucru astfel încât să aibă în continuare tot un număr par de papagali din fiecare specie (altfel papagalii s-ar simţi singuri). Kokalaru47 e mare fan al schemelor de papagali, deci vrea să achiziţioneze noii papagali astfel încât numărul de scheme de papagali care vor putea fi efectuate după aceea să fie cât mai mare. La aceste scheme participă atât papagalii pe care îi avea deja, cât şi cei $X{~i~}$ papagali noi.
$K0kalaru47$ are $Q$ planuri de a-şi extinde colecţia. Pentru fiecare plan $i$, el îşi doreşte să achiziţioneze $X{~i~}$ papagali noi, aparţinând celor $K$ specii. El va face acest lucru astfel încât să aibă în continuare tot un număr par de papagali din fiecare specie (altfel papagalii s-ar simţi singuri). K0kalaru47 e mare fan al schemelor de papagali, deci vrea să achiziţioneze noii papagali astfel încât numărul de scheme de papagali care vor putea fi efectuate după aceea să fie cât mai mare. La aceste scheme participă atât papagalii pe care îi avea deja, cât şi cei $X{~i~}$ papagali noi.
În viziunea sa, o schemă cu papagali este definită astfel: papagalii se aşează într-un şir, apoi fiecare papagal îşi alege o pereche din aceeaşi specie cu el. Fiecare papagal va aparţine exact unei perechi. Kokalaru47 consideră că două scheme sunt diferite dacă şi numai dacă cel puţin una dintre următoarele condiţii este îndeplinită:
În viziunea sa, o schemă cu papagali este definită astfel: papagalii se aşează într-un şir, apoi fiecare papagal îşi alege o pereche din aceeaşi specie cu el. Fiecare papagal va aparţine exact unei perechi. $K0kalaru47$ consideră că două scheme sunt diferite dacă şi numai dacă cel puţin una dintre următoarele condiţii este îndeplinită:
# Există o poziţie $x$ astfel încât papagalul de pe poziţia $x$ din prima schemă aparţine altei specii decât papagalul de pe poziţia $x$ din a doua schemă.
# Există două poziţii $x$ si $y$ astfel încât papagalii de pe poziţiile $x$ si $y$ sunt într-o pereche în prima schemă, dar nu sunt într-o pereche în a doua schemă.
# Există două poziţii $x$ şi $y$ astfel încât papagalii de pe poziţiile $x$ si $y$ sunt într-o pereche în prima schemă, dar nu sunt într-o pereche în a doua schemă.
h2. Cerinţă
Kokalaru47 vă roagă să-i spuneţi care este numărul maxim de scheme de papagali ce pot fi efectuate în situaţia iniţială şi în fiecare dintre planurile sale, modulo $1.000.000.007$.
$K0kalaru47$ vă roagă să-i spuneţi care este numărul maxim de scheme de papagali ce pot fi efectuate în situaţia iniţială şi în fiecare dintre planurile sale, modulo $10^9^ + 7$.
h2. Date de intrare
h2. Date de ieşire
Pe prima linie a fişierului de ieşire $papagali.out$ se va afla numărul de scheme de papagali care pot fi realizate în situaţia iniţială. Pe linia $i+1$ ({$1≤i≤Q$}) se va afla numărul maxim de scheme de papagali care se pot obtine prin achizitionarea a $X{~i~}$. noi papagali. Aceste numere vor fi afişate modulo $1.000.000.007$.
Pe prima linie a fişierului de ieşire $papagali.out$ se va afla numărul de scheme de papagali care pot fi realizate în situaţia iniţială. Pe linia $i+1$ ({$1≤i≤Q$}) se va afla numărul maxim de scheme de papagali care se pot obtine prin achizitionarea a $X{~i~}$ noi papagali. Aceste numere vor fi afişate modulo $10^9^ + 7$.
h2. Restricţii
* $0$ ≤ $N$, $K$, $Q$ ≤ $200.000$
* $0$ ≤ $N$, $Q$ ≤ $200.000$
* $1$ ≤ $K$ ≤ $200.000$
* $0$ ≤ $X{~i~}$ ≤ $400.000$
* $N$, $A{~i~}$, şi $X{~i~}$ sunt pare
* Pentru teste în valoare de $10$ puncte, $K = 1$
* Pentru teste în valoare de $30$ de puncte, $Q = 0$
* Pentru teste în valoare de $20$ de puncte, $K$, $Q$ ≤ $2000$ şi $X{~i~}$ ≤ $4000$
h2. Exemplu
table(example). |_. papagali.in |_. papagali.out |
| This is some
  text written on
  multiple lines.
| This is another
  text written on
  multiple lines.
|
| 6 2
  4 2
  1
  2
| 45
  630
|
| 4 3
  2 0 2
  3
  2 100 400000
| 6
  90
  427478919
  717454963
|
h3. Explicaţie
...
În primul exemplu sunt 45 de scheme care se pot face cu papagalii iniţiali. Câteva dintre aceste scheme sunt:
 
* Aşezăm papagalii din prima specie pe primele 4 poziţii şi papagalii din a doua specie pe ultimele 2 poziţii. Formăm perechi între papagalii de pe poziţiile $1$ şi $2$, $3$ şi $4$, $5$ şi $6$.
 
* Aşezăm papagalii din prima specie pe primele 4 poziţii şi papagalii din a doua specie pe ultimele 2 poziţii. Formăm perechi între papagalii de pe poziţiile $1$ şi $3$, $2$ şi $4$, $5$ şi $6$.
 
* Aşezăm papagalii din prima specie pe poziţiile $1$, $3$, $5$ şi $6$ şi papagalii din a doua specie pe poziţiile $2$ şi $4$. Formăm perechi între papagalii de pe poziţiile $1$ şi $6$, $3$ şi $5$, $2$ şi $4$.
 
* Aşezăm papagalii din prima specie pe poziţiile $1$, $2$, $4$ şi $6$ şi papagalii din a doua specie pe poziţiile $3$ şi $5$. Formăm perechi între papagalii de pe poziţiile $1$ şi $6$, $3$ şi $5$, $2$ şi $4$.
 
Dacă în planul din primul exemplu achiziţionăm alţi doi papagali din a doua specie, vom putea face $630$ de scheme, acesta fiind numărul maxim posibil.
== include(page="template/taskfooter" task_id="papagali") ==

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.