Kombinacije
Strana 1 od 2 12 PoslednjaPoslednja
Prikazujem rezultate 1 do 25 od 29

Tema: Kombinacije

  1. #1
    Početnik
    Učlanjen
    29.08.2006.
    Poruke
    7
    Reputaciona moć
    0

    Question Kombinacije

    Potrebna mi je pomoc u resavanju sledeceg problema :

    Imam niz od 20 elemenata "NizA" (broj elemenata zadaje korisnik),
    NizA[0] = "A01";
    NizA[1] = "A02";
    ------------------------
    NizA[18] = "A19";
    NizA[19] = "A20";
    potrebna mi je funkcija koja ce da napravi novi niz "NizB" a koji treba da sadrzi sve kombinacije sa 8 elemenata od nizA (ovaj broj isto zadaje korisnik)
    Npr. to treba da izgleda ovako :
    NizB[0] = "A01A02A03A04A05A06A07A08";
    NizB[1] = "A01A02A03A04A05A06A07A09";
    NizB[2] = "A01A02A03A04A05A06A07A10";
    --------------------------------------------------------------
    NizB[125969] = "A13A14A15A16A17A18A19A20";



  2. #2
    Obećava Nemanja666 (avatar)
    Učlanjen
    27.05.2006.
    Poruke
    99
    Reputaciona moć
    43

    Podrazumevano Re: Kombinacije

    potreban ti je alogoritam za nalazenje varijacija.

    var
    duzina_drugog_niza : integer;

    procedure varijacije(a : string; b : string);
    var i : word ; c, d : string;

    begin
    if Length(a) = duzina_drugog_niza then writeln(a) else
    for i := 1 to length(b) do begin
    c := b;
    d := a + c[i];
    delete(c, i, 1);
    varijacije(d, c)
    end;
    end;

    funkciju zovi ovako:

    varijacije ('', ulaz);

    prvi parametar je prazan string
    drugi je string od koga trazimo varijacije
    duzina_drugog_niza je duzina dobijenih varijacija.

    malo je moras preurediti za svoj problem ali ovako ces najlakse svatiti logiku.

    ako ti treba u c++ javi.

  3. #3
    Zainteresovan član
    Učlanjen
    23.08.2005.
    Poruke
    379
    Reputaciona moć
    48

    Podrazumevano Re: Kombinacije

    A mozda i u C-u???
    Samo jedan klub--samo jedan grad---
    samo Z E T A bre
    kakav partizan

  4. #4
    Početnik
    Učlanjen
    29.08.2006.
    Poruke
    7
    Reputaciona moć
    0

    Podrazumevano Re: Kombinacije

    Odgovaralo bi mi u C++ posto sam prethodni deo odradio u Visual C++ 6.0.

  5. #5
    Obećava Nemanja666 (avatar)
    Učlanjen
    27.05.2006.
    Poruke
    99
    Reputaciona moć
    43

    Podrazumevano Re: Kombinacije

    Uredu cekaj do sutra sad isprobav neki program pa nemam vremena.

  6. #6
    Početnik
    Učlanjen
    29.08.2006.
    Poruke
    7
    Reputaciona moć
    0

    Podrazumevano Re: Kombinacije

    Nemanja sta bi sa tobom????

  7. #7
    Obećava Nemanja666 (avatar)
    Učlanjen
    27.05.2006.
    Poruke
    99
    Reputaciona moć
    43

    Podrazumevano Re: Kombinacije

    Smetnuo sam za tebe. Samo jedno pitanje za sto ti treba jer ako zeles da dobijes sve varacije duzina 8 od niza duzine 20 trebaceti na 3 GHz jednu mjesec dva dana.
    Poslednji put ažurirao/la Nemanja666 : 25.09.2006. u 11:28

  8. #8
    Poznat Garwor (avatar)
    Učlanjen
    27.04.2004.
    Pol
    muški
    Poruke
    7.152
    Reputaciona moć
    121

    Podrazumevano Re: Kombinacije

    Nije li covek trazio kombinacije a ne varijacije?!

  9. #9
    Primećen član maksvel (avatar)
    Učlanjen
    30.06.2004.
    Pol
    muški
    Poruke
    778
    Reputaciona moć
    57

    Podrazumevano Re: Kombinacije

    Hm, a da se vlado nije malo neprecizno izrazio? Kod varijacija je bitan redosled, a kod kombinacija ne... Njemu je valjda redosled bitan
    Let the boy try

  10. #10
    Početnik
    Učlanjen
    29.08.2006.
    Poruke
    7
    Reputaciona moć
    0

    Podrazumevano Re: Kombinacije

    Mislim da cu malo bolje da objasnim sta mi treba na primeru :
    Uzecu manje brojeve za kombinovanje da bih mogao da napisem sve kombinacije.
    Ukupno kombinacija 3 od 5 ima 10 i to su:

    A01A02A03
    A01A02A04
    A01A02A05
    A01A03A04
    A01A03A05
    A01A04A05
    A02A03A04
    A02A03A05
    A02A04A05
    A03A04A05

    Ja mislim da su ovo kombinacije a ne varijacije, ako gresim ispravite me.
    Sto se tice vremena koje je potrebno da se naprave sve kombinacije 10 od 20 (ima ih 184756) mislim da ne bi trebalo da bude vece od 10 minuta.

  11. #11
    Poznat Garwor (avatar)
    Učlanjen
    27.04.2004.
    Pol
    muški
    Poruke
    7.152
    Reputaciona moć
    121

    Podrazumevano Re: Kombinacije

    Evo ti jedan glup primer u javi koji radi samo ispis, a ti ga prepravi u sta ti vec treba i dodaj upis u rezultujuci niz:

    Kod:
    public class Combinations {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		System.out.println("Combinations!");
    		long count = 0;
    		for (int i1 = 0; i1 < 13; i1++) {
    		  for (int i2 = i1+1; i2 < 14; i2++) {
    		    for (int i3 = i2+1; i3 < 15; i3++) {
    		      for (int i4 = i3+1; i4 < 16; i4++) {
    			for (int i5 = i4+1; i5 < 17; i5++) {
    			  for (int i6 = i5+1; i6 < 18; i6++) {
    			    for (int i7 = i6+1; i7 < 19; i7++) {
    			      for (int i8 = i7+1; i8 < 20; i8++) {
    				System.out.println(" A"+i1+" A"+i2+" A"+i3+" A"+i4+" A"+i5+" A"+i6+" A"+i7+" A"+i8);
    				count++;
    			      }
    			    }
    			  }
    			}
    		      }
    		    }
    		  }
    		}
    		System.out.println("count :"+count);
    	}
    
    }
    Ima 125970 kombinacija, kao sto si ocekivao.

  12. #12
    Neproveren član MasterYoda (avatar)
    Učlanjen
    18.08.2006.
    Pol
    muški
    Lokacija
    Very Far Away from Anywhere Else
    Poruke
    4.260
    Reputaciona moć
    0

    Podrazumevano Re: Kombinacije

    Garw, kod je OK što i sam znaš.

    Za one koji ne znaju, broj kombinacija n brojeva iz grupe od m brojeva računa se kao m nad n što se opet izračunava kao m!/(n!*(m-n)!) što za sistem 8 elemenata iz grupe od 20 daje 20!/8!*12! = 125970.

  13. #13
    Primećen član maksvel (avatar)
    Učlanjen
    30.06.2004.
    Pol
    muški
    Poruke
    778
    Reputaciona moć
    57

    Podrazumevano Re: Kombinacije

    Ok, znači nije bitan redosled -> kombinacije
    Let the boy try

  14. #14
    Iskusan
    Učlanjen
    06.12.2004.
    Poruke
    5.596
    Reputaciona moć
    103

    Podrazumevano Re: Kombinacije

    Citat Original postavio sorlaag
    Ok, znači nije bitan redosled -> kombinacije
    [font=Verdana]Verovatno je najlakše reći "neuređen izbor bez ponavljanja" i onda je sve jasno.[/font]

  15. #15
    Poznat Garwor (avatar)
    Učlanjen
    27.04.2004.
    Pol
    muški
    Poruke
    7.152
    Reputaciona moć
    121

    Podrazumevano Re: Kombinacije

    Pa, kad se kaze kombinacije 8-me klase od 20 elemenata, to je dovoljno precizno.

  16. #16
    Iskusan
    Učlanjen
    06.12.2004.
    Poruke
    5.596
    Reputaciona moć
    103

    Podrazumevano Re: Kombinacije

    Citat Original postavio Garwor
    Pa, kad se kaze kombinacije 8-me klase od 20 elemenata, to je dovoljno precizno.
    [font=Verdana]Meni je jasno i jedno i drugo, ali mi "neuređen izbor bez ponvaljanja" deluje opisnije nego kombinacija. U većini slučajeva eliminiše dodatna podpitanja.[/font]

  17. #17
    Neproveren član MasterYoda (avatar)
    Učlanjen
    18.08.2006.
    Pol
    muški
    Lokacija
    Very Far Away from Anywhere Else
    Poruke
    4.260
    Reputaciona moć
    0

    Podrazumevano Re: Kombinacije

    Vlado je vjerovatno napisao svoju zadaću a dalje rasprave o kombinacijama i skupovima mogu negdje u matematiku. I ova tema je vjerovatno završila svoje. LOCK.

  18. #18
    Početnik
    Učlanjen
    29.08.2006.
    Poruke
    7
    Reputaciona moć
    0

    Podrazumevano Re: Kombinacije

    Grawor kod je OK, radi bas onako onako kako mi treba. Hvala.

    Imao bih jos jedno pitanje na ovu temu.

    Postoji li mogucnost da se ovaj kod prepravi da radi sa zadatim brojevima za kombinovanje, recimo da zadam da mi napravi sve kombinacija 6 od 18 ili 10 od 20 ili bilo koju drugu kombinaciju, da nebih morao svaki put da prepravljam kod?

  19. #19
    Neproveren član MasterYoda (avatar)
    Učlanjen
    18.08.2006.
    Pol
    muški
    Lokacija
    Very Far Away from Anywhere Else
    Poruke
    4.260
    Reputaciona moć
    0

    Podrazumevano Re: Kombinacije

    Naravno da se može. U programiranju se može skoro sve. Ali, potrudi se malo, nemoj da ti sav kod pišu drugi. Ovo nije čak ni mnogo teško prepraviti.
    (Naravno, u nekim razumnim granicama, i računar ima svoja fizička ograničenja, a i C++ svoja).
    Poslednji put ažurirao/la MGordan : 29.09.2006. u 00:11

  20. #20
    Obećava Nemanja666 (avatar)
    Učlanjen
    27.05.2006.
    Poruke
    99
    Reputaciona moć
    43

    Podrazumevano Re: Kombinacije

    Citat Original postavio Garwor
    Evo ti jedan glup primer u javi koji radi samo ispis, a ti ga prepravi u sta ti vec treba i dodaj upis u rezultujuci niz:

    Kod:
    public class Combinations {
    
    	public static void main(String[] args) {
    		// TODO Auto-generated method stub
    		System.out.println("Combinations!");
    		long count = 0;
    		for (int i1 = 0; i1 < 13; i1++) {
    		  for (int i2 = i1+1; i2 < 14; i2++) {
    		    for (int i3 = i2+1; i3 < 15; i3++) {
    		      for (int i4 = i3+1; i4 < 16; i4++) {
    			for (int i5 = i4+1; i5 < 17; i5++) {
    			  for (int i6 = i5+1; i6 < 18; i6++) {
    			    for (int i7 = i6+1; i7 < 19; i7++) {
    			      for (int i8 = i7+1; i8 < 20; i8++) {
    				System.out.println(" A"+i1+" A"+i2+" A"+i3+" A"+i4+" A"+i5+" A"+i6+" A"+i7+" A"+i8);
    				count++;
    			      }
    			    }
    			  }
    			}
    		      }
    		    }
    		  }
    		}
    		System.out.println("count :"+count);
    	}
    
    }
    Ima 125970 kombinacija, kao sto si ocekivao.

    Ala glupog resenja znasli koja je slozenost tvog alogoritma? N na 8

  21. #21
    Obećava Nemanja666 (avatar)
    Učlanjen
    27.05.2006.
    Poruke
    99
    Reputaciona moć
    43

    Podrazumevano Re: Kombinacije

    Citat Original postavio vlado_036
    Grawor kod je OK, radi bas onako onako kako mi treba. Hvala.

    Imao bih jos jedno pitanje na ovu temu.

    Postoji li mogucnost da se ovaj kod prepravi da radi sa zadatim brojevima za kombinovanje, recimo da zadam da mi napravi sve kombinacija 6 od 18 ili 10 od 20 ili bilo koju drugu kombinaciju, da nebih morao svaki put da prepravljam kod?

    Nema sanse pogotova ovaj njegocv alogoritam. Za ovo se mora malo koristiti dinamickim programiranjem da bi se zadatak ubrzo ali za 6 od 18 nema sanse

  22. #22
    Poznat Garwor (avatar)
    Učlanjen
    27.04.2004.
    Pol
    muški
    Poruke
    7.152
    Reputaciona moć
    121

    Podrazumevano Re: Kombinacije

    Citat Original postavio Nemanja666
    Ala glupog resenja znasli koja je slozenost tvog alogoritma? N na 8
    Bravo majstore, zapanjen sam tvojim analitickim sposobnostima, stavise upravo si ispunio sve uslove za project managera: nista ne radis, samo ides okolo i smaras glupim konstatacijama.

  23. #23
    Obećava Nemanja666 (avatar)
    Učlanjen
    27.05.2006.
    Poruke
    99
    Reputaciona moć
    43

    Podrazumevano Re: Kombinacije

    Citat Original postavio Garwor
    Bravo majstore, zapanjen sam tvojim analitickim sposobnostima, stavise upravo si ispunio sve uslove za project managera: nista ne radis, samo ides okolo i smaras glupim konstatacijama.
    Nebudali neko iznese za sto pravi program pa cu pomoci, a ne ovako trebamu kombinacije. Neka iznese kakav program radi pa se onda program moze ubrzati ali ovako nista. Ako njemu moze da program radi obradu duze dobro ali nito nece moci dobice gresku Stack Overflow

  24. #24
    Neproveren član MasterYoda (avatar)
    Učlanjen
    18.08.2006.
    Pol
    muški
    Lokacija
    Very Far Away from Anywhere Else
    Poruke
    4.260
    Reputaciona moć
    0

    Podrazumevano Re: Kombinacije

    Citat Original postavio Nemanja666
    Nebudali neko iznese za sto pravi program pa cu pomoci, a ne ovako trebamu kombinacije. Neka iznese kakav program radi pa se onda program moze ubrzati ali ovako nista. Ako njemu moze da program radi obradu duze dobro ali nito nece moci dobice gresku Stack Overflow
    Kad već tako dobro analiziraš programe, hajde ovdje iznesi svoju procjenu koliko bi trebao da bude dubok stack da se izvrši Garwov kod. Ali pazi, ne radi se o rekurzivnom pozivanju nego o ugnježdenim for petljama.
    Evo ti moja procjena: dovoljan je sistemski stack za slučaj da program bude prekinut (a hoće biti od strane sistema). Tada će biti na stek smješteni deskriptori prekinutog programa i stanja registara. I to je sve. Sam kod zahtijeva dubinu stack-a 0, jer ga i ne koristi.

    (DXXIII)

  25. #25
    Poznat Garwor (avatar)
    Učlanjen
    27.04.2004.
    Pol
    muški
    Poruke
    7.152
    Reputaciona moć
    121

    Podrazumevano Re: Kombinacije

    Citat Original postavio Nemanja666
    Nebudali neko iznese za sto pravi program pa cu pomoci, a ne ovako trebamu kombinacije. Neka iznese kakav program radi pa se onda program moze ubrzati ali ovako nista. Ako njemu moze da program radi obradu duze dobro ali nito nece moci dobice gresku Stack Overflow
    Bas kao sto rekoh, neka neko uradi, a ti ces onda da pomognes.

    Vlada je dao zanimljiv zadatak, resavaj.

Slične teme

  1. Kombinacije
    Autor Ne_Vazim_Se u forumu Preduzetništvo i radni odnosi
    Odgovora: 3
    Poslednja poruka: 06.02.2009., 12:19
  2. Kombinacije
    Autor DellBoy-011 u forumu Politika
    Odgovora: 37
    Poslednja poruka: 12.06.2008., 20:09
  3. Balkanske kombinacije
    Autor David Coverdale u forumu Politika
    Odgovora: 73
    Poslednja poruka: 16.02.2007., 19:30

Pravila za slanje poruka

  • Ne možete kreirati novu temu
  • Ne možete poslati odgovor
  • Ne možete dodati priloge
  • Ne možete prepraviti svoju poruku
  •