Somma le dita

kobeilprofeta
Sto cercando una strategia vincente al gioco delle somme con le dita.

Come si gioca: i due giocatori partono entrambi con un dito della mano alzato. Si parte con due mani a testa quindi ognuno avrà due dita "aperte", una sulla mano destra ed una sulla sinistra. A turno parte un giocatore: con una sua mano (a sua scelta) tocca una mano (a sua scelta) dell'avversario. A questo punto l'avversario alzerà nella mano che gli è stata toccata un numero di dita pari alla somma delle dita che aveva in precedenza piu quelle che ha la mano con cui è stato toccato.
Es:
Gioc1 d1 s1
Gioc2 d1 s1

Gioc1 tocca con la destra la destra di gioc2 e:
Gioc1 d1 s1
Gioc2 d2 s1

Poi tocca a gioc2 che tocca con la propria destra la sinistra dell'avversario:
Gioc1 d1 s3
Gioc2 d2 s1


NB: se in una situazione così:
Marco d4 s2
Luca d3 s3
Marco fa d-s (cioè attacca con la propria destra la sinistra di luca), al posto di essere:
Marco d4 s2
Luca d3 s7
Si avrà:
Marco d4 s2
Luca d3 s2
Cioè al posto di un numero superiore a 5, si mette la differenza tra quel numero e 5. Cioè 6 diventa 1, 9 diventa 4, ecc...

Una mano che arriva a valore 5 viene eliminata (0) e si segna con un pugno chiuso. Perde chi ha entrambe le mani eliminate. 


Variante: una variante del gioco permette di "spezzare":
Quando si ha d2x s2x o d2x s0 o ancora d0 s2x {cioè lo stesso valore pari su entrambe o un numero pari su una e l'altra eliminata}, si possono portare a dx sx. Cioè es: d4 s4 diventa d2 s2. d3 s3 non posso perche è dispari. d2 s0 diventa d1 s1. d2 s2 diventa d1 s1.
Quando ci si trova in questa situazione, si puó decidere se attaccare normalmente la mano avversaria o se spezzare: importante che se spezzo non posso anche attaccare, o una o l'altra cosa.

Es se è il turno di Luca e:
Marco d3 s3
Luca d2 s2
Non gli converrà spezzare, ma attaccherà eliminando una mano ed andando quindi a vincere la partita perche seguiranno le seguenti mosse (a partire dalla prima di luca)
1) d-d
2) s-d
3) s-s e vittoria
Oppure
1) d-d
2) s-s
3) d-s e vittoria.



Concludendo: esiste una strategia vincente in entrambi i casi: quello in cui si può spezzare e quello in cui non si può??

Risposte
Pianoth
In giochi di questo tipo la strategia vincente consiste nel portare l'avversario in una posizione di "perdita forzata"... Mi sembra di ricordare che sai scrivere programmini in C, perché non provi a scriverne uno che gioca "perfettamente" (un po' come quello di tris, tanto il numero di combinazioni possibili per questo gioco dovrebbe essere minore o uguale a $6^3*5*2$)?

kobeilprofeta
Il mio problema è che non riesco a scrivere un programma vincente in C++ senza aver capito quale sia la strategia vincente... Prima la capisco teoricamente e poi la applico ad un gioco virtuale.

Io ho pensato alle possibili combinazioni dopo la mossa n) ds-DS, dove ds e DS sono la destra e la sinistra rispettivamente del primo e del secondo giocatore.

0) 11-11
1) 11-21
2) 21-21 31-21
3) 21-41 21-23 21-31 21-22 31-51 31-24 31-31 31-22

Ora provo ad analizzare queste (senza spezzata):
21-41: il primo perde una mano 2-41 e 2-11 o 2-43. 2-43 è perdente, quindi 2-11,3-11,3-41 che è anch'essa perdente.


In questo caso ho analizzato 21-41 che fa vincere il secondo giocatore. Se siamo in quattro basta analizzarne due a testa e, almeno per il caso senza spezzata, dovremmo essere a posto

kobeilprofeta
Sto provando ad analizzare tutte le combinazioni che dicevo, ricordando che siamo alla quarta mossa e che quindi muove B. Ho dimostrato che 21-41, 21-23, 21-31 portano una vittoria di B e sto lavorando sulle altre. In tutti questi casi ci si ritrovava in una situazione del tipo a-bc con mossa a B. Cioè tocca a muovere al giocatore che ha due mani e l'avversario ne ha una sola.  Non ho ancora provato con tutte ma per ora sono risultate tutte vincenti a chi ne ha due tranne 2-12 e 2-44. Inoltre ho notato che x-x fa sempre vincere chi muove prima. Se riuscissimo ad analizzare in primis tutte le combinazioni di tipo x-y e di tipo ab-c o a-bc, credo che saremmo ad un buon punto per trovare la strategia vincente.
...fatemi sapere se qualcuno ha intenzione di aiutarmi in ciò, altrimenti proverò da solo... 

Ps: intanto io provo tutte le x-y...



*tutto nell'ambito senza spezzare



EDIT
x-y risolto, considerando la prima mossa fatta da A:
Vince A in:
1-1
1-4
2-2
2-3
3-2
3-3
4-1
4-4
Vince B in:
1-3
2-1
3-4
4-2
C'è un pareggio (ovvero si ripete la stessa sequenza di mosse all'infinito) in:
1-2
2-4
3-1
4-3

Pianoth
Per 31-22 (così giusto per dire di non avere fatto assolutamente nulla, anche se di certo ci sarà qualche modo migliore e più ordinato, come per esempio ordinare le mani in ordine crescente, in modo da essere sicuri di non analizzare la stessa posizione più volte :-D)
31-22 porta a 1-22 o a 33-22.

1-22 con turno di A è perdita o pareggio: 1-23, 3-23 o 4-23, (3-3 perdita o 3-21 perdita) o (4-13 perdita o 4-22, 1-22 pareggio)

33-22 con turno di A è perdita: 33-2, 3-2 perdita.
Spero di non avere sbagliato qualcosa.

kobeilprofeta
Grazie per l'interessamento... Cmq ho appena risolto il caso xy-w nel caso in cui cominci A:
Vince sempre A, tranne in:
12-2
13-1
21-2
24-4
31-1
34-3
42-4
43-3
In cui c'è un pareggio.

Mi rimane da capire il caso in cui parta chi gioca solo con un dito (cioè B in xy-w).
Teoricamente la mossa di B porterà ad uno dei casi precedentemente analizzati (cioè xy-w con mossa ad A). L'unico modo di non perdere per B è quello di portare ad una situazione di quelle che ho elencato in cui non vince A (sia il caso xy-w, che quello precedente x-y).

Se mi sono spiegato bene, riusciresti a dirmi quali combinazioni xy-w con mossa a B portano B a "salvarsi"?

Pianoth
Ti faccio innanzitutto notare che era meglio se seguivi quanto ho detto nel post di prima, ti conviene ordinare in ordine crescente i numeri così eviti di analizzare le stesse posizioni più volte... Guarda tu stesso, tra quelle che hai scritto la prima e la terza sono praticamente uguali, anche la seconda e la quinta, la quarta e la settima, e la sesta e l'ottava... Comunque per ottenere quelle in cui B non perde basta partire dalle posizioni in cui è pareggio che hai scritto tu e poi si sottrae B, ottenendo le seguenti:
12-1
42-2
31-3
44-4
e volendo anche le combinazioni uguali...
21-1
24-2
13-3
(44-4 è proprio identica identica)

kobeilprofeta
Mi sono accorto che ho ripetuto situazioni uguali. Ma ciò solo perchè per scriverle più velocemente non ho controllato le ripetizioni...nonostante ciò, per analizzarle mi sono accorto di quelle iguali e le ho fatte una sola volta


Detto ciò, credo che tu mi abbia frainteso:
Nei casi 44-4,33-3... Non c'è un pareggio, ma vince A se parte, i casi in cui si pareggia anche se vince A sono quelli che ho scritto prima...

Pianoth
Anche io credo che tu mi abbia frainteso: tutta la lista che hai fatto prima (12-2, 13-1, 24-4, 34-3 evitando le ripetizioni) sono partite in cui se è il turno di A allora è pareggio. Io, sottraendo B dove è possibile ottengo quelle in cui se muove B è pareggio, infatti prendendo una di quelle che ho scritto io: 13-3
Muove B. B deve per forza colpire sull'1 per non perdere: 43-3. 43-3 è un pareggio, come hai scritto tu sopra. Chiaro? O forse sono io che non ci ho capito proprio niente? (il che è probabile, eh :-D)

Edit: In effetti si dovrebbero aggiungere situazioni in cui B può in effetti vincere, ma è facile ottenerle perché deve essere per forza un caso in cui elimina una delle due mani avversarie portandosi a una situazione x-y in cui vince che hai analizzato prima (B non può vincere in un caso in cui dopo una mossa va in una posizione xX-y perché sarebbe uno dei casi che hai analizzato tu).

kobeilprofeta
Non preoccuparti...sono io che non avevo capito...è sera. Perfetto ora basta analizzare le sequenze che avevo scritto inizialmente e vedere quando capitano situazioni di quel tipo...farò domani mattina...buona notte 

kobeilprofeta
I casi in cui si raggiunge una situazione x-w
A me risulta xy-w se parte w:
Pareggia con:
12-4
13-2
24-3
23-1
21-4
32-1
34-1
42-3
43-1
Vince w con:
12-3
13-4
21-3
24-1
31-4
34-2
42-1
43-2




Ps) da quanto mi è risultato tu avevi fatto solo i casi in cui si portava ad un'altra situazione di tipo xy-w...ora dovremmo averli tutti

kobeilprofeta
Scusa un'altra cosa: ho riguardato le tue per portare ad un xy-w:
Al posto di 44-4, io direi 34-4 e 43-4...

Pianoth
Sì, scusami hai ragione. Comunque hai di nuovo riscritto posizioni uguali, facendo così hai perso molto tempo...

kobeilprofeta
Dopo aver analizzato: x-w, xy-w con partenza di xy ed infine xy-w con partenza di w; possiamo finalmente analizzare la partita:



PARTENZA
11-11
MUOVE A
11-21
MUOVE B
21-21. 31-21
MUOVE A
21-41. 21-23. 21-31. 21-22. 31-1. 31-24. 31-31. 31-22.

Ora deve muovere B, il suo scopo è di portare in una situazione xy-w in cui vince xy anche se parte w. Puó farlo in:

21-41 attaccando d-s (nb: è nella forma ds ds e non sd sd) e portando sul 2-41 dove vince 41 (B).

31-22 attaccando d-d e portando sul 1-22 dove vince 22 (B).

*21-23 attaccando s-d e portando sul 1-23 che porta una vittoria del 23 (B)

21-31 attaccando d-d e portando sul 1-31 che porta a vincere il 31 (B).

Un' altra cosa da notare è la combinazione 31-1 giocata prima dall'1 (B): porta ad un pareggio.



* da quanto detto prima, 23-1 e 32-1 con partenza dell'1 porterebbero ad un pareggio, ma a me risulta una vittoria del 23, quindi mi correggo escludiamo 23-1 e 32-1 dalle "salvezze" di w.

Pianoth
"kobeilprofeta":

* da quanto detto prima, 23-1 e 32-1 con partenza dell'1 porterebbero ad un pareggio, ma a me risulta una vittoria del 23, quindi mi correggo escludiamo 23-1 e 32-1 dalle "salvezze" di w.

È ovvio, 23-1 e 32-1 salvano w se parte lui, ma in quel caso non parte lui :smt023

kobeilprofeta
"Pianoth":
[quote="kobeilprofeta"]
* da quanto detto prima, 23-1 e 32-1 con partenza dell'1 porterebbero ad un pareggio, ma a me risulta una vittoria del 23, quindi mi correggo escludiamo 23-1 e 32-1 dalle "salvezze" di w.

È ovvio, 23-1 e 32-1 salvano w se parte lui, ma in quel caso non parte lui :smt023[/quote]




Non ho capito il senso: nel nostro caso B attacca e porta A ad essere w, mentre B rimane xy. Poi è il turno di A, quindi ci troviamo nel caso xy-w in cui parte w e prima avevo scrityo che 23-1,32-1 salvano w ma mi sbagliavo: quindi w (A) non si salva e vince B.

Rimangono 3 delle 8 possibili combinazioni da analizzare...5 le ho già fatte e risultano 4 votyorie di B ed un pareggio.

kobeilprofeta
Mi correggo: 31-1 giocata da w porta ad una vittoria di xy.

Rispondi
Per rispondere a questa discussione devi prima effettuare il login.