text.skipToContent text.skipToNavigation

wenglor Student Software Challenge 2025

WSSC 2025 s-a terminat

Descriere

Provocarea este de a dezvolta o aplicație care poate rezolva eficient un joc Sudoku. Participanții trebuie să creeze o aplicație care să poată produce soluția corectă pentru un joc de Sudoku furnizat.

Rezolvarea jocului Sudoku

O bază de date este oferită în fișierul input.txt. Fiecare rând din fișier reprezintă un puzzle Sudoku 9x9 reprezentat ca un șir de 81 de caractere. Cifrele apar în ordine de la stânga la dreapta, de sus în jos. Cifra 0 indică o celulă goală, iar cifrele de la 1 la 9 constituie indicii date.

Scopul tău este să scrii un console application care să poată rezolva aceste puzzle-uri. Aplicația poate fi scrisă în orice limbaj de programare, atâta timp cât executabilul său poate fi rulat de  evaluator.exe, pe care îl vei avea la dispoziție. Soluția trebuie să scrie puzzle-urile rezolvate într-un fișier de ieșire numit output.txt, folosind același format și aceeași ordine ca în fișierul de intrare.
 
NOTĂ: Dacă folosești limbaje ezoterice, te rugăm să oferi și un docker container pentru compilare.

Nu trimite fișierul output.txt. Acesta trebuie să fie generat de executabilul tău compilat.

Poți folosi orice biblioteci, dar logica de rezolvare a jocului Sudoku trebuie implementată de tine. 


Idei utile:    
  1. Ia în considerare utilizarea unei abordări paralele.
  2. Gândește-te la compromisuri între viteza de execuție și consumul de memorie.
  3. Acordă atenție configurațiilor și flag-urilor de compilator, dacă este cazul.

Vizualizarea jocului de Sudoku

Creează o aplicație grafică ușor de utilizat care să permită utilizatorilor să interacționeze cu o tablă de Sudoku – să încarce și să rezolve puzzle-uri. Vor exista și puncte suplimentare pentru orice funcționalități extra pe care le vei implementa.

Ai posibilitatea să creezi această aplicație în orice format preferi (de exemplu, aplicație web, aplicație desktop, aplicație mobilă etc.). Tehnologiile/limbajele de programare utilizate nu sunt restricționate în niciun fel.

De asemenea, pe lângă aplicație, va trebui să încărcați și un demo (fie video, fie o instanță live a aplicației) și, opțional, un set de slide-uri care evidențiază principalele caracteristici și modul în care funcționează aplicația. Dacă te vei califica pentru un premiu, va trebui să vii pentru o demonstrație și o prezentare a funcționalităților aplicației și a codului

Scor

Task-ul 1: 100p 

Pentru primul task, scorul va fi realizat cu ajutorul evaluatorului nostru inclus în acest pachet. Fiecare intrare validă va fi punctată pe o scală de 100p după cum urmează:
  • 25p consum de memorie:
    scorul tău = LMC/YMC*25p
        LMC – consumul mediu minim de memorie
        YMC – consumul mediu de memorie al aplicației tale

     
  • 25p viteză de execuție, timpul total petrecut în rularea executabilului:
    scorul tău = LET/YET*25p
        LET – timpul mediu minim de execuție
        YET – timpul mediu de execuție al aplicației tale

     
  • 20p corectitudinea calculată pe baza la sudoku_validator.exe:
    scorul tău = YNSPS/HNSPS*20p
        HNSPS – numărul cel mai mare de puzzle-uri Sudoku rezolvate
        YNSPS – numărul tău de puzzle-uri Sudoku rezolvate

     
  • 30p design-ul aplicației & lizibilitatea codului:
    scorul tău = evaluare a codului realizată de organizatorul concursului
 

Task-ul 2 + funcționalități extra: 100p + 20p 

Pentru al doilea task, juriul concursului (format din angajați ai organizatorului) va realiza scorul. Fiecare intrare validă va fi punctată pe o scală de 100p având în vedere criterii precum ușurința în utilizare, claritatea si structura codului.
De asemenea, suplimentar, juriul va lua în considerare acordarea a până la 20p pe baza complexității implementării funcționalităților extra.

Punctajul de la fiecare task va fi însumat pentru a crea scorul final.
Pentru a obține un premiu, este necesar un minim de 100p. Doar primele trei proiecte care înregistrează cel mai mare scor vor fi recompensate financiar, așa cum este specificat în flyer.

Mediu de testare

  1. Windows 10 sau Windows 11 pe procesor Intel Core i7-11850H
  2. Pentru calcularea consumului de memorie și a vitezei de execuție, va fi folosit programul  evaluator.exe furnizat în pachet.
  3. Pentru calcularea rezultatului de ieșire, va fi folosit sudoku_validator.exe furnizat în pachet.

Utilizarea evaluator.exe

Copiază fișierul tău executabil în folderul pachetului și rulează evaluator.exe cu executabilul tău ca parametru de start. După ce evaluarea este completă, va genera un raport cu rezultatele evaluării. Alternativ, poți da dublu click pe evaluator.exe după ce ai copiat executabilul în același director.

Utilizarea sudoku_validator.exe

După ce ai generat fișierul output.txt, poți rula instrumentul de verificare sudoku_validator.exe și vei putea vedea cât de bine te-ai descurcat. Fișierul output.txt trebuie să fie în același director când rulezi sudoku_validator.exe.

Download

Fișiere wenglor Student Software Challenge
Fișiere wenglor Student Software Challenge (58 MB)
Acest fișier conține informațiile de care aveți nevoie pentru a finaliza sarcina.

Programul concursului

21 Martie – 27 Aprilie 2025
Trimite detaliile tale de contact (fără fisiere surse si executabile) la adresa de e-mail paul.barbu@wenglor.com și spune-ne:
  • Numele tău
  • Numărul de telefon
  • E-mail
  • Universitatea și specializarea
  • Anul universitar curent
  • De unde ai aflat despre acest concurs
  • Locul de muncă actual (dacă ești student angajat)

După ce ai trimis detaliile tale de contact, vei primi un link către o pagină unde vei putea încărca codul sursa si alte documente necesare.

28 Aprilie – 9 Mai 2025
Vom evalua soluțiile trimise. Aceasta poate include și necesitatea de a prezenta soluțiile tale la sediul companiei. Te vom contacta dacă va fi cazul. 

12 – 16 Mai 2025
Acordarea premiilor concursului la sediul wenglor.

Condiții de participare

  • ​​​​​​​Trebuie să fii student la licență sau masterat în Sibiu pentru a participa 
  • Nu trebuie să fii angajat actual sau fost angajat al wenglor 


Dacă ai nevoie de detalii suplimentare, te rugăm să ne contactezi la adresa de e-mail paul.barbu@wenglor.com
​​​​​​​
Ürün karşılaştırması