.dsy:it. Pages (10): « First ... « 2 3 4 5 [6] 7 8 9 10 »
Show 150 posts per page

.dsy:it. (http://www.dsy.it/forum/)
- Algoritmi e strutture dati (http://www.dsy.it/forum/forumdisplay.php?forumid=207)
-- [Progetto] Samegame3 (http://www.dsy.it/forum/showthread.php?threadid=33907)


Posted by imperator on 27-02-2008 20:00:

hai ragione scusa... sn stato impreciso o cmq nn chiaro... anche un insieme composto da una biglia di un colore è un blocco
esempio:
(3,5)=B
(3,6)=R
(7,8)=B
ho tre blocchi (3, 5), (3,6), (7,8)


Posted by kalbiz on 27-02-2008 22:14:

qualcuno si è buttato sulla riduzione ?
a parte il gran casino, almeno personalmente è un gran casino, come fate la somma per colonna del blocco da ridurre ?????
cioè usate una matrice e due indici for
oppure con una bfs, anche se non mi è chiaro come arrivare a dire che su x la somma è tot su x+1 è tot eccetera .....


Posted by darkshadow on 27-02-2008 22:21:

l'algoritmo per trovare le colonne da eliminare che danno il punteggio massimo l'ho trovato. Il problema pero è implementarlo infatti come dice Kalbiz diventa difficile fare la somma delle colonne in un albero. Cmq anchio ci stavo provando a crearmi una matrice con solo le colonne interessate ma non ho ancora arrivato a niente di concreto.

__________________
by Ð@rk§h@ÐØw


Posted by kalbiz on 27-02-2008 22:40:

tentavo la stessa strada, anche se per ora mi è oscuro l'algoritmo... io ho un grafo ed è difficile uguale... se incaselli le biglie del blocco in una matrice, quando poi la riduci , cioè muovi le biglie dove esiste lo spazio, in x-1, come fai a decidere quale è la tua base di riduzione ??? se la prima colonna del blocco è diciamo x = 3 , una biglia si sposta solo fino a x=3 corretto ???


Posted by Larios on 28-02-2008 12:54:

si la colonna "piu a sinistra" del blocco è il limite massimo di spostamento per quelle che rimangono.


Posted by Larios on 28-02-2008 14:49:

c'è una cosa che non capisco come risolvere...
quendo eseguo operazioni del tipo B devo aprire un foglio, leggere le informazioni compreso il colore che non si sa che lunghezza possa essere(nel testo parla di non mettererestrizioni nella lunghezza dei colori se non ricordo male).

Quindi prendendolo carattere per carattere esapando la mia stringa puntatore di volta in volta e quando ha finito associo alla funzione di creazione della biglia.

la seconda voltache richiamo l'operazione di tipo B e leggo un nuovo colore anche il colore della mia biglia precedente storata cambia...e prende l'ultimo inserito.

qualcuno mi sadire come posso evitare questa cosa?


Posted by Kira82 on 28-02-2008 15:49:

Scusate ma mi è venuto un dubbio, voi avete creato celle e biglie o avete fatto in modo che siano la stessa cosa? cioè io ho fatto in modo che le celle mi vengano create nel momento in cui faccio un input e se nell'input ho 0.0 allora la cella non contiene biglie, altrimenti si crea la cella e automaticamente la colora e gli assegna un valore(quindi contiene una biglia).Voi avete fatto così oppure io sto sbagliando nella comprensione del progetto?


Posted by darkshadow on 28-02-2008 16:03:

non sbagli Kira82 è proprio cosi.

__________________
by Ð@rk§h@ÐØw


Posted by Kira82 on 28-02-2008 16:30:

grazie darkshadow, ne approfitto per farti un'ulteriore domanda riguardo alle strutture..io ho usato per ora (sono ancora alle funzioni base) un grafo per le biglie, secondo te (che sicuramente sei più avanti) usando il grafo mi trovo poi in difficoltà nelle funzioni più complesse e sarebbe meglio usare un albero rb?

Te lo chiedo così se mi conviene di più usare un albero non vado avanti con il grafo..


Posted by darkshadow on 28-02-2008 16:49:

guarda che un albero rb è un grafo.

la struttura è del tipo...

struct albero_biglie{

struct albero_biglie *left, *rigt, *up;
int campo;
}

ovviamente la mia è un po' diversa ma il concetto è quello.

per quanto riguarda la complessità come detto precedentemente c'e' il problema di eliminare le colonne.

PS: Come avete risolto la funzione minore??
Ho provato con liste di liste ma ogni volta mi andava a sovvrascivere quello che ho messo precedentemente.

Adesso sto provando con un albero ma niente ancora di concreto.

__________________
by Ð@rk§h@ÐØw


Posted by Gioe on 28-02-2008 16:55:

Come si fa un grafo orientato in c? almeno la definizione della struttura.

Grazie in anticipo

__________________
@~@~@~@~@~@~@~@~@~@

TIMEO DANAOS ET DONA FERENTES

@~@~@~@~@~@~@~@~@~@


Posted by Kira82 on 28-02-2008 17:09:

si so che un albero rb è un grafo ma l'implementazione è leggermente diversa..bisogna creare una radice e anche le operazioni (es. ricerca ed inserimento) non sono uguali..era per questo che distinguevo grafo da albero..ho forse sbagliato a capire qualcosa?


Posted by kalbiz on 28-02-2008 19:44:

bloccato ... ho usato un grafo per le biglie ... il problema che si propone è, una volta determinato un blocco, sommare i valori delle biglie sulle rispettive colonne... come sopra ... con un rb non saprei magari viene meglio l'algoritmo per la scelte dell xn da eliminare...


Posted by kalbiz on 28-02-2008 20:12:

@Gioe :
quando costruisci gli archi del grafo poni le relazioni solo da un nodo verso un'altro e non in entrambi i versi


Posted by imperator on 29-02-2008 08:11:

qualcuno è riuscito a fare la funzione riduzione? se si dove ha trovato informazioni utili per trovare i totali di tutte le possibili combinazioni delle colonne?
thanks


All times are GMT. The time now is 04:54. Pages (10): « First ... « 2 3 4 5 [6] 7 8 9 10 »
Show all 147 posts from this thread on one page

Powered by: vBulletin Version 2.3.1
Copyright © Jelsoft Enterprises Limited 2000 - 2002.