Stock Market - Task 2

Time limit: 1s Memory limit: 64MB Input: Output:

ATENȚIE: Aceasta problemă valorează 150150 de puncte. La "submissions" scorul maxim este rescalat la 100100 de puncte, dar adevaratul scor va fi vizibil pe leaderboard.

Singura diferență între Task 1 și Task 2 este constituită de conținutul fișierelor bursa.txt și queries.txt.

Evident că o companie gigantică precum Chert And este listată la Bursa de Valori București. Prețul acțiunilor variază într-un mod foarte interesant, dar care le dă bătăi imense de cap analiștilor de piață. Acestia au colectat date despre preturile actiunilor in anumite momente de timp. Ajutați-i pe aceștia să prezică prețul acțiunilor la alte momente de timp. În schimb, veți primi inside-uri referitoare la dezastrul fermei din România.

fig 1. Green Trading \text{fig 1. Green Trading}

Problema

Se dau NN perechi de valori x,yx, y. Acestea reprezintă faptul că la momentul de timp xx, o acțiune costă yy RON.

Trebuie să raspundeți pentru QQ valori xx, reprezentând alte momente de timp, o aproximație a prețului, yy.

Input

Pe prima linie a fișierului atașat (în dreapta paginii sub „Atașamente”), bursa.txt, se va găsi numărul NN.

Pe următoarele NN linii veți găsi perechi de numere x,yx,y, cu semnificația din enunț.

Pe prima linie a fișierului atașat (în dreapta paginii sub „Atașamente”) queries.txt, se va găsi numărul QQ.

Pe următoarea linie se vor găsi QQ valori xx, cu semnificația din enunț.

Output

Problema este output only.

Submisia voastră va fi un fisier text si trebuie să conțină QQ valori, răspunsurile în ordine la întrebările din fișierul queries.txt.

valoare_1
valoare_2
...
valoare_Q

Va rugăm să afișați răspunsul cu o precizie de măcar 33 zecimale.

Precizări

  • Toate valorile date, dar și cele pe care comisia se așteaptă să le primească, sunt în intervalul 109109-10^9 \dots 10^9 și sunt de tip double (numere reale).

Punctaj

Definim avgDeviation=k=1QgiviQavgDeviation = \frac{\sum_{k = 1}^{Q} |g_i - v_i|}{Q}, iar p=10min(10,avgDeviation)10p = \frac{|10 - min(10, avgDeviation)|}{10}. Intuitiv, aceast formula inseamna ca, daca in medie raspunsurile voastre la query difera fata de raspunsurile reale cu mai mult de 10, veti lua 0p. Altfel, veti lua puncte gradual.

Astfel, scorul pe care îl veți primi la problemă va fi: p150p \cdot 150. În plus:

  • p0.3\text{p} \ge 0.3, veți primi un batch de coordonate pentru META-TASK.
  • p0.6\text{p} \ge 0.6, veți primi două batch-uri de coordonate pentru META-TASK.
  • p0.9\text{p} \ge 0.9, veți primi trei batch-uri de coordonate pentru META-TASK.

ATENȚIE: Batch-urile se primesc sub formă de link la Google Drive în verdictul testului de evaluare.

Log in or sign up to be able to send submissions!