|
|
|
|
 |
|  |
 |
ste182 |
| Progetto "DIE HARD" |
22-12-2009 15:17 |
|
 |
ste182 |
.arcimaestro.
Registered: Oct 2004
Posts: 258 (0.03 al dì)
Location:
Corso: informatica
Anno:
Time Online: 2 Days, 5:06:07: [...]
Status: Offline
Edit | Report | IP: Logged |
Progetto "DIE HARD"
Ciao ragazzi!
è uscito, come avrete notato, il testo del progetto "DIE HARD".
Sto iniziando a ragionarci sopra e sembra abbastanza fattibile, no?
Il mio dubbio è sul tipo di struttura adeguata da utilizzare; sicuramente l'operazione più frequente sarà la ricerca(quindi ho escluso le liste).
Sono indeciso se utilizzare hash table o alberi rb. Le prime hanno complessità costante nel caso migliore ma dipendono da molti fattori nel caso medio/peggiore(fattore di carico, numero degli elementi, grandeza tabella..).
Gli alberi rb invece hanno tempo di ricerca pari a O(log(n)).
voi che ne dite? che strutture pensate di utilizzare?
ps: è fattibile secondo voi una cosa del tipo: utilizzare hash con alberi rb per risolvere le collisioni?
__________________
Live Fast, Die Fun
|
|
22-12-2009 15:17 |
|
|
|  |
 |
f3d386 |
| guarda io sto pensando di utilizzare gli alberi rb ... |
22-12-2009 16:43 |
|
 |
f3d386 |
.primate.
Registered: Oct 2005
Posts: 79 (0.01 al dì)
Location: Milano
Corso: Sicurezza Informatica
Anno: 1
Time Online: 6:36:31 [...]
Status: Offline
Edit | Report | IP: Logged |
guarda io sto pensando di utilizzare gli alberi rb come struttura principale...
non sono però riuscito ancora a individuare la struttura adatta per quanto riguarda le combinazioni, cioè tutti i passaggi per passare da una configurazione a ad una configurazione b.
Voi che pensate di fare?
|
|
22-12-2009 16:43 |
|
|
|  |
 |
ste182 |
| eh, bella domanda... :( ... |
22-12-2009 16:49 |
|
 |
ste182 |
.arcimaestro.
Registered: Oct 2004
Posts: 258 (0.03 al dì)
Location:
Corso: informatica
Anno:
Time Online: 2 Days, 5:06:07: [...]
Status: Offline
Edit | Report | IP: Logged |
eh, bella domanda... 
__________________
Live Fast, Die Fun
|
|
22-12-2009 16:49 |
|
|
|  |
 |
arfish |
| Ragazzi ma come funziona l'operazione raggiungibil ... |
23-12-2009 14:41 |
|
 |
arfish |
.amico.
Registered: Feb 2007
Posts: 36 (0.01 al dì)
Location: Milano
Corso: Informatica
Anno: 3
Time Online: 1 Day, 6:39:36 [...]
Status: Offline
Edit | Report | IP: Logged |
Ragazzi ma come funziona l'operazione raggiungibile??
|
|
23-12-2009 14:41 |
|
|
|  |
 |
f3d386 |
| eh...proprio lì sta il casino.
... |
23-12-2009 21:45 |
|
 |
f3d386 |
.primate.
Registered: Oct 2005
Posts: 79 (0.01 al dì)
Location: Milano
Corso: Sicurezza Informatica
Anno: 1
Time Online: 6:36:31 [...]
Status: Offline
Edit | Report | IP: Logged |
eh...proprio lì sta il casino.
In teoria ti dice se è possibile passare da una configurazione A ad una B attraverso una serie di operazioni elementari (riempi, svuota, travasa).
Ad esempio se la mia configurazione A è 0[3] 0[5] chiedo al programma se è raggiungibile una configurazione B ad esempio 0[3] 4[5]...
in questo modo in teoria:
r 0 4
e il programma dovrebbe restituirmi SI in quanto facendo questi passaggi:
1. riempire il contenitore da 5 galloni: (0[3],5[5]);
2. travasare il contenitore da 5 in quello da 3: (3[3],2[5]);
3. svuotare il contenitore da 3: (0[3],2[5]);
4. travasare il contenitore da 5 in quello da 3: (2[3],0[5]);
5. riempire il contenitore da 5: (2[3],5[5]);
6. travasare il contenitore da 5 in quello da 3: (3[3],4[5]);
7. svuotare il contenitore da 3: (0[3] 4[5])
ottengo proprio la configurazione dei livelli richiesta in input...
il problema è: che struttura usare? io sto pensando a un grafo ma ho qualche problema a far tornare il tutto...
idee???
|
|
23-12-2009 21:45 |
|
|
|  |
 |
technorebel |
| io voterei per un albero di ricerca rb...come prim ... |
23-12-2009 22:26 |
|
 |
technorebel |
il R
Registered: Jun 2003
Posts: 105 (0.01 al dì)
Location: Bergamo
Corso: informatica
Anno: 3°
Time Online: 1 Day, 21:37:46 [...]
Status: Offline
Edit | Report | IP: Logged |
io voterei per un albero di ricerca rb...come prima idea...ma ben vengano altre...
__________________
C0d3 Z3r0
|
|
23-12-2009 22:26 |
|
|
|  |
 |
f3d386 |
| si credo che per gestire l'input vada bene...ma il ... |
23-12-2009 22:37 |
|
 |
f3d386 |
.primate.
Registered: Oct 2005
Posts: 79 (0.01 al dì)
Location: Milano
Corso: Sicurezza Informatica
Anno: 1
Time Online: 6:36:31 [...]
Status: Offline
Edit | Report | IP: Logged |
si credo che per gestire l'input vada bene...ma il raggiungibile non credo sia implementabile con un albero rosso nero...o almeno non ne sono tanto sicuro...
|
|
23-12-2009 22:37 |
|
|
|  |
 |
arfish |
| f3d386 dopo aver letto il tuo post stavo pensando ... |
24-12-2009 09:42 |
|
 |
arfish |
.amico.
Registered: Feb 2007
Posts: 36 (0.01 al dì)
Location: Milano
Corso: Informatica
Anno: 3
Time Online: 1 Day, 6:39:36 [...]
Status: Offline
Edit | Report | IP: Logged |
f3d386 dopo aver letto il tuo post stavo pensando anch'io a un grafo.
Magri popolarlo con i risultati di tutte le combinazioni fino a raggiungere la soluzione... non credo sia una soluzione decente...
|
|
24-12-2009 09:42 |
|
|
|  |
 |
f3d386 |
| oltre a non essere decente presenta pure un proble ... |
24-12-2009 11:17 |
|
 |
f3d386 |
.primate.
Registered: Oct 2005
Posts: 79 (0.01 al dì)
Location: Milano
Corso: Sicurezza Informatica
Anno: 1
Time Online: 6:36:31 [...]
Status: Offline
Edit | Report | IP: Logged |
oltre a non essere decente presenta pure un problema...le operazioni riempi e svuota hanno condizioni ke evitano il loop, ossia quando un contenitore è pieno l'operazione riempi si blocca e idem per l'operazione svuota se un contenitore è vuoto. L'operazione travasa invece è previsto si blocchi se il contenitore sorgente è vuoto o se il contenitore destinazione è pieno, ma cosa sucede se ad esempio ho una tanica da 3 e una da 5 riempio quella da 3 e poi continuo a travasare quella quantità d'acqua tra i due vasi???si crea un loop e l'operazione travasa continuerà a generare operazioni possibili...è un casino!volevo scrivere al prof di questo problema ma credo che non mi risponderebbe comunque fino al 7 di gennaio...
|
|
24-12-2009 11:17 |
|
|
|  |
 |
arfish |
| pensavo di risolvere il problema del calcolo dei " ... |
24-12-2009 11:42 |
|
 |
arfish |
.amico.
Registered: Feb 2007
Posts: 36 (0.01 al dì)
Location: Milano
Corso: Informatica
Anno: 3
Time Online: 1 Day, 6:39:36 [...]
Status: Offline
Edit | Report | IP: Logged |
pensavo di risolvere il problema del calcolo dei "percorsi" già effettuati inserendo i risultati in un albero, e cercare se sono stati già calcolati o meno, ma il tutto mi sembra di un macchinoso...
|
|
24-12-2009 11:42 |
|
|
|  |
 |
f3d386 |
| ragazzi scusate...prima ancora di arrivare al punt ... |
25-12-2009 23:02 |
|
 |
f3d386 |
.primate.
Registered: Oct 2005
Posts: 79 (0.01 al dì)
Location: Milano
Corso: Sicurezza Informatica
Anno: 1
Time Online: 6:36:31 [...]
Status: Offline
Edit | Report | IP: Logged |
ragazzi scusate...prima ancora di arrivare al punto cruciale mi sono fermato sul problema dell'input, nel caso dell'inserimento (es. N 3 4 5)
cioè lui dice cito testualmente:
"
- crea contenitori(c)
Dato un vettore c = (c1 , c2 , . . . , cn ) di interi positivi, inizializza una sequenza di n contenitori
inizialmente vuoti aventi capacit`a c1 , c2 , . . . , cn . Ad esempio, crea contenitori(2, 3, 6) inizializzerà la configurazione (0[2],0[3],0[6]). Se esiste già una sequenza di contenitori, la cancella e ne crea una nuova. "
ma questo significa che obbligatoriamente l'input dovrà essere inserito in un vettore?
e poi io per il momento non sto usando un vettore ma per far capire al compilatore che la seuquenza di interi di input è finita, come faccio? avevo pensato che l'utente possa far terminare la sequenza inserendo il valore 0 (dato ke non è concepibile un contenitore di capacità 0)...ma il prof non dice nulla in merito nella scheda del progetto...dite che posso fare così o sono completamente fuori strada?
|
|
25-12-2009 23:02 |
|
|
|  |
 |
f3d386 |
| ho risolto!!!
... |
25-12-2009 23:29 |
|
 |
f3d386 |
.primate.
Registered: Oct 2005
Posts: 79 (0.01 al dì)
Location: Milano
Corso: Sicurezza Informatica
Anno: 1
Time Online: 6:36:31 [...]
Status: Offline
Edit | Report | IP: Logged |
ho risolto!!!
la soluzione ce l'avevo sotto gli occhi ma data l'ora non me ne rendevo conto XD XD XD
|
|
25-12-2009 23:29 |
|
|
|  |
 |
f3d386 |
| ragazzi ma nessuno ha idea della struttura da usar ... |
26-12-2009 10:34 |
|
 |
f3d386 |
.primate.
Registered: Oct 2005
Posts: 79 (0.01 al dì)
Location: Milano
Corso: Sicurezza Informatica
Anno: 1
Time Online: 6:36:31 [...]
Status: Offline
Edit | Report | IP: Logged |
ragazzi ma nessuno ha idea della struttura da usare per implementare le funzioni esiste raggiungibile e configurazioni ???
io mi sto dannando cercando di capire quale può essere!!! 
help meeeeeeeeee!!!!!!!!!!!
|
|
26-12-2009 10:34 |
|
|
|  |
 |
Deckard |
| [QUOTE][i]Originally posted by f3d386 [/i]
... |
26-12-2009 11:08 |
|
 |
Deckard |
.illuminato.

Registered: Sep 2008
Posts: 242 (0.04 al dì)
Location: ~
Corso: Info
Anno: primo
Time Online: 3 Days, 17:53:20 [...]
Status: Offline
Edit | Report | IP: Logged |
Originally posted by f3d386
ragazzi ma nessuno ha idea della struttura da usare per implementare le funzioni esiste raggiungibile e configurazioni ???
io mi sto dannando cercando di capire quale può essere!!! 
help meeeeeeeeee!!!!!!!!!!!
Ma è sicuramente un grafo. Le varie operazioni come "raggiungibili" e "configurazioni" sono delle semplici visite per ampiezza e/o profondità opportunamente modificate.
Il problema è capire come rappresentarlo questo grafo: tramite vettore di liste di adiacenza calcolando all'inizio tutti i possibili lati? È la soluzione più semplice ma molto inefficiente poiché lo spazio occupato aumenta in maniera esponenziale rispetto al numero dei contenitori.
Le altre possibilità che mi sono venute in mente ho paura siano invece un po' troppo complesse da implementare.
__________________
And all those moments will be lost in time, like tears in rain...
|
|
26-12-2009 11:08 |
|
|
|  |
 |
pirlo21 |
| secondo me bisogna decifrare bene questo....
... |
26-12-2009 12:58 |
|
 |
pirlo21 |
.arcimaestro.
Registered: Nov 2007
Posts: 352 (0.05 al dì)
Location:
Corso: informatica
Anno:
Time Online: 2 Days, 21:38:57 [...]
Status: Offline
Edit | Report | IP: Logged |
secondo me bisogna decifrare bene questo....
- raggiungibile(a)
Dato un vettore a = (a1; a2; : : : ; an) di interi positivi, stampa SI' oppure NO a seconda che dalla
con¯gurazione attuale sia possibile raggiungere una con¯gurazione in cui, per ogni i 2 f1; 2; : : : ; ng,
il contenitore i ha livello ai.
Perchè non mi sembra che sia lo stesso significato spiegato all'inizio del testo, così come la storia delle bombe assume significato solo nelle versioni successive del programma, potrebbe essere così anche per raggiungibile
|
|
26-12-2009 12:58 |
|
|
|  |
 |
| All times are GMT. The time now is 12:55. |
|
|
 |
|
 |
|
|
|  |
Forum Rules:
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
|
HTML code is OFF
vB code is ON
Smilies are ON
[IMG] code is ON
|
|
|
|
|
|