The Puzzle Guild Archives
Autor: Rus Vlad-Andrei
🧩 The Puzzle Guild Archives
🍂 Povestea
Într-o dimineață cețoasă, Luca răsfoia manuscrise prăfuite într-o bibliotecă veche.
Pe o masă ascunsă între rafturi a găsit un jurnal legat în piele.
Pe prima pagină scria:
„Dacă citești asta, înseamnă că ai găsit arhiva Puzzle Guild."
Luca a clipit.
— Puzzle Guild?
A continuat să citească.
„În fiecare an organizăm provocări pentru cele mai bune echipe de rezolvitori de puzzle-uri din lume.
Dar anul acesta arhiva noastră s-a corupt... iar stilurile echipelor au fost pierdute."
Luca a oftat.
— Perfect. Exact ce îmi trebuia azi... o bază de date misterioasă.
Pe ultima pagină era o notiță scrisă de mână:
„Dacă reușești să reconstruiești stilurile echipelor și să descifrezi statisticile competiției, vei deveni oficial membru al Puzzle Guild."
Luca s-a uitat la laptop.
— Bine... challenge accepted.
Acum tu trebuie să îl ajuți.
📁 Datele
Ai primit două fișiere din arhiva guild-ului.
data.csv
Conține informații despre runde ale competiției.
| Coloană | Descriere |
|---|---|
RoundID | identificatorul rundei |
skill_level | nivelul de experiență al echipei |
teamwork_score | cât de bine lucrează echipa împreună |
puzzle_intuition | intuiția pentru puzzle-uri |
arcane_knowledge | cunoștințe misterioase |
focus_level | nivelul de concentrare |
strategy_depth | complexitatea strategiei |
location | locul unde are loc runda |
puzzle_type | tipul puzzle-ului |
secret_mechanism | mecanismul ascuns |
story_arc | tema narativă |
tech_assist | există asistență tehnologică |
night_mode | puzzle-ul are loc noaptea |
focus_magic | capacitatea echipei de a menține concentrarea în situații dificile |
mystery_power | nivelul de abilitate al echipei în manipularea mecanismelor misterioase |
team_synergy | cât de bine sunt sincronizați membrii echipei în timpul rezolvării |
style | stilul echipei (uneori necunoscut) |
⚠️ Problema este că majoritatea valorilor din
stylelipsesc.
Valorile posibile sunt:
| Valoare | Semnificație |
|---|---|
-1 | stil necunoscut |
0 | stil cunoscut |
1 | stil cunoscut |
2 | stil cunoscut |
Luca a ridicat o sprânceană.
— Cine a făcut datele astea chiar vrea să sufăr.
🧠 Ce trebuie să faci
Arhiva Puzzle Guild conține trei enigme.
Luca a citit instrucțiunile cu voce tare.
🔎 Subtask 1 — Un tipar suspect
În jurnal apare o notiță:
„Uneori cele mai interesante lucruri se întâmplă în biblioteci."
Trebuie să afli câte runde respectă simultan condițiile:
location = "The Old Library"
tech_assist = 1
Formal: numără toate rândurile care respectă simultan ambele condiții.
Luca a murmurat:
— Dacă găsesc o ușă secretă într-o bibliotecă, promit că nu o deschid... probabil.
📊 Subtask 2 — Statisticile guild-ului
În jurnal apare un calcul rapid:
„În Crystal Cave, echipele care rezolvă puzzle-uri logice sau secvențiale cu tehnologie au o performanță interesantă."
Trebuie să calculezi:
S = mean(skill_level) + mean(teamwork_score)
Conditii:
location = Crystal Cave
tech_assist = 1
puzzle_type = Logic,Sequence
unde mean(x) reprezintă media aritmetică a coloanei respective.
Rezultatul final trebuie rotunjit la exact 2 zecimale.
Luca a notat formula într-un colț de pagină.
— Ok... asta e partea ușoară... sper.
🌀 Subtask 3 — Stilurile pierdute
Aici începe misterul.
Majoritatea etichetelor style au fost pierdute.
Tot ce știm este că există trei stiluri diferite de rezolvare:
| Stil | Descriere |
|---|---|
0 | echipe exploratoare |
1 | echipe analitice |
2 | echipe intuitive |
După o analiză mai atentă, Luca a observat ceva curios.
Punctele păreau să formeze un model spirală într-un spațiu latent.
— Ah... genial. Evident că e o spirală.
Trebuie să reconstruiești stilul corect pentru fiecare rundă.
📊 Metrica de evaluare
Pentru subtask-ul 3 se folosește:
Adjusted Rand Index (ARI)
-1 <= ARI <= 1
| ARI | Interpretare |
|---|---|
| 1 | clustering perfect |
| 0 | aleator (random) |
| < 0 | clustering foarte slab |
Luca s-a uitat la tabel și a zis:
— Ok... deci dacă iau -0.5 înseamnă că am făcut ceva foarte impresionant de rău.
🧮 Scor pentru Subtask 3
Punctajul pentru clustering se calculează astfel:
- dacă
ARI >= 0.965→ 70 puncte (punctaj maxim) - dacă
ARI <= 0.50→ 0 puncte - pentru
0.50 < ARI < 0.965→ punctaj proporțional între 0 și 70
| ARI | Punctaj |
|---|---|
| 0.50 | 0 |
| 0.70 | ~30 |
| 0.965 | 70 |
📄 Formatul submisiei
Fișierul submission.csv trebuie să conțină:
subtaskID | datapointID | answer |
|---|---|---|
1 | 1 | ... |
2 | 1 | ... |
3 | 0 | ... |
3 | 1 | ... |
3 | 2 | ... |
🏆 Scorul final
- S1 = 15 puncte
- S2 = 15 puncte
- S3 = 70 puncte
La finalul jurnalului, Luca a găsit o ultimă frază:
„Dacă ai ajuns până aici și ai reconstruit stilurile... felicitări.
Puzzle Guild te urmărește."
Luca a închis jurnalul.
— Ok... asta a devenit puțin creepy.
Apoi a deschis laptopul.
— Hai să vedem dacă putem bate spirala asta.