Sub sume dintr-un vector nesortat IMPORTANT

Această secţiune se ocupă cu programarea, fără a ţine cont de limbaj. Dacă vrei (sau trebuie) să înveți algoritmică, aici este locul potrivit. Descrieri şi idei de algoritmi, algoritmi clasici și întrebări pe baza acestora, toate vor fi postate aici.

Sub sume dintr-un vector nesortat IMPORTANT

Postby begood » 16 Dec 2011, 13:19

Se da un vector cu informatii nesortate, de lungime n.
A se stabili toate combinatiile posibile de doua sau mai multe elemente care au suma mai mica sau egala cu m.


a= [2, 6, 3, 1, 5]
n= 5;
m= 6;

2+3 = 5 < 6
2+1 = 3 < 6
3+1 = 4 < 6
2+3+1 = 6 = 6

Apreciez orice idei.
0,0p / 0 votes
User avatar
begood
Bit
 
Joined: 08 Mar 2011
Status: 0

Re: Sub sume dintr-un vector nesortat IMPORTANT

Postby depraved » 16 Dec 2011, 14:22

Ehm....Backtracking ?

ceva de genul
void bk(int nivel)
{
pentru(i=1,n,1)
{
adauga elementul v[i] in stiva ;
daca suma nu depaseste m si conditiile de validare sunt respectate
bk(nivel+1)
altfel
inchide nivelul curent, treci la nivelul anterior si afiseaza ce e in stiva.}
0,0p / 0 votes
User avatar
depraved
Bit
 
Joined: 03 Sep 2011
Status: 1

Re: Sub sume dintr-un vector nesortat IMPORTANT

Postby smith » 16 Dec 2011, 15:05

Backtracking e inutil - sau oricum, din câte îl știu pe begood n-ar dori backtracking - altfel n-ar fi venit pe forum.
Mă gândesc că o fi ceva dinamică - mă mai gândesc după ce vin de la facultă.
0,0p / 0 votes
Ilea Cristian
User avatar
smith
Enum
 
Joined: 29 Dec 2009
Location: Cluj-Napoca
Status: 82


Return to Algoritmică

Who is online

Users browsing this forum: No registered users and 0 guests