losowanie bez powtórzeń...

kostek92
Użytkownik
Użytkownik
Posty: 43
Rejestracja: 24 sty 2010, o 12:27
Płeć: Mężczyzna
Lokalizacja: Polska
Pomógł: 2 razy

losowanie bez powtórzeń...

Post autor: kostek92 »

mam mały problem z dość nietypową sytuacją...

mam tablicę 17 elementową i losuję z niej 10 elementów to kolejnej tablicy...

a teraz niestandardowość problemu...

w tej pierwszej tablicy elementy się powtarzają...

konkretnie są to 8x0.5 2x1 4x2 3x5 (to są monety.. 50 gr, 1zł, 2zł i 5zł)

no i nie chcę żeby mi się powtarzały te sami indeksy tablicy pierwszej w drugiej..
bo same wartości mogą się powtarzać...

i nie działa tutaj sztuczka typu:

for (int j=0; j<i; j++)
if (tab[j]=tab)
i--;

ma ktoś jakiś pomysł..?
abc666

losowanie bez powtórzeń...

Post autor: abc666 »

No to najpierw wylosuj 10 unikalnych indeksów tą "sztuczką" a potem przepisz elementy o tych indeksach.
kostek92
Użytkownik
Użytkownik
Posty: 43
Rejestracja: 24 sty 2010, o 12:27
Płeć: Mężczyzna
Lokalizacja: Polska
Pomógł: 2 razy

losowanie bez powtórzeń...

Post autor: kostek92 »

hmmm...
no ale jak to właśnie zorganizować (w C++ najlepiej)
no bo do tego chyba potrzebowałbym 100 zmiennych...
no i jak te indeksy z tych niezależnych losowań do 10 różnych zmiennych potem porównać?

(tak właściwie to już sobie poradziłem dość łopatologicznie i przez to mało wydajnie w taki sposób że losuję tablicę normalnie i potem dopiero sprawdzam czy nie mam za dużo jakiejś wartości i jak coś się nie zgadza to cofam licznik i tak do skutku...)
abc666

losowanie bez powtórzeń...

Post autor: abc666 »

No zrób sobie tablice i do niej wylosuj indeksy.
ODPOWIEDZ