Pagini: [1]   În jos
  Imprimă  
Ajutor Subiect: Sortarea prin oglindiri (o problema)  (Citit de 4325 ori)
0 Utilizatori şi 1 Vizitator pe acest subiect.
baTTLe4u_15
Strain


Karma: 2
Deconectat Deconectat

Mesaje: 19



Vezi Profilul
« : Martie 25, 2013, 18:32:43 »

Am gasit urmatoarea problema:

Se citeşte de la tastatură un şir de n numere naturale cuprinse între 1 si 60000. Se cere ordonarea crescătoare a acestui şir folosind următoarea operaţie: se fixează un element al şirului şi apoi se oglindesc secvenţele din stânga şi din dreapta lui. De exemplu, dacă în şirul (6 5 7 8 9 4 6 5) se fixează elementul de pe poziţia 4 se va obţine şirul (7 5 6 8 5 6 4 9) adică se oglindeşte şirul (6 5 7) şi şirul (9 4 6 5), şiruri aflate în stânga şi respectiv în dreapta elementului de pe poziţia 4. Se pot fixa şi elementele fictive de pe poziţiile 0 si n+1.
Să se afişeze toate poziţiile care s-au fixat pentru a ajunge la soluţie. Numărul acestor poziţii fixate trebuie să nu fie mai mare decât 3n.
   Exemplu. Pentru ÅŸirul (4,20,5,50,25) poziÅ£iile fixate sunt (4,5,5,6,4, 5,5,6,5,6).

Asta am lucrat eu pana acum
http://pastebin.com/YKSawJze  Spiteful

Trebuie sa-mi mai dau seama in ce mod se alege pozitia pentru oglindire  Brick wall
Memorat
cristiavra
Strain


Karma: 1
Deconectat Deconectat

Mesaje: 11



Vezi Profilul
« Răspunde #1 : Martie 25, 2013, 19:49:42 »

pot sa te intreb unde ai gasit problema? Smile
Memorat
baTTLe4u_15
Strain


Karma: 2
Deconectat Deconectat

Mesaje: 19



Vezi Profilul
« Răspunde #2 : Martie 25, 2013, 20:02:32 »

Mi-a dat doamna profesoara sa lucrez, dar nici dansa nu stie s-o rezolve... Beat Dead Horse
Memorat
mihaipopa12
Client obisnuit
**

Karma: 74
Deconectat Deconectat

Mesaje: 64



Vezi Profilul
« Răspunde #3 : Martie 25, 2013, 20:38:48 »

Cred ca problema este si pe infoarena Smile:
http://www.infoarena.ro/problema/order2
Memorat
baTTLe4u_15
Strain


Karma: 2
Deconectat Deconectat

Mesaje: 19



Vezi Profilul
« Răspunde #4 : Martie 25, 2013, 20:45:13 »

Interesant  Embarassed
Nu stiam , n-am mai intalnit-o. Si totusi, are 0.1 sec limita de timp, merge cat de cat oglindirea facuta de mine ? Sau sunt complet paralel cu problema...? Whistle
Memorat
mihaipopa12
Client obisnuit
**

Karma: 74
Deconectat Deconectat

Mesaje: 64



Vezi Profilul
« Răspunde #5 : Martie 25, 2013, 20:54:47 »

Solutia problemei e O(n^2). Functia de oglindire e buna dar trebuie sa vezi cum folosesti oglindirile incat sa sortezi sirul. Nu e corecta abordarea ta cu citirea x-ului la care sa oglindesti  Think
Memorat
baTTLe4u_15
Strain


Karma: 2
Deconectat Deconectat

Mesaje: 19



Vezi Profilul
« Răspunde #6 : Martie 25, 2013, 20:59:20 »

Stiu, am pus chestia cu citirea pozitiei pentru a testa mai rapid exemplele date de mine si sincer sa fiu nici exemplele nu le pot duce pana la capat.. din momemnt ce nu le-am inteles matematic nici n-am ce implementa. (as crede ca trebuie un if ceva.. sa caut o secventa crescatoare/descrescatoare sau nu stiu.... inca n-am gasit o idee care sa mearga pe caz general).
Memorat
mihaipopa12
Client obisnuit
**

Karma: 74
Deconectat Deconectat

Mesaje: 64



Vezi Profilul
« Răspunde #7 : Martie 25, 2013, 21:05:08 »

http://probleme.francu.com/arhiva/R0028/enunt.html

De aici e luata problema, vad ca e si rezolvarea acolo.
Bafta!
Memorat
baTTLe4u_15
Strain


Karma: 2
Deconectat Deconectat

Mesaje: 19



Vezi Profilul
« Răspunde #8 : Martie 25, 2013, 21:30:37 »

Multumesc pentru sursa. O sa studiez cu atentie sa vad care-i faza cu pozitiile acelea pe acolo.  Weightlift
Memorat
Pagini: [1]   În sus
  Imprimă  
 
Schimbă forumul:  

Powered by SMF 1.1.19 | SMF © 2006-2013, Simple Machines