Creato da tanksgodisfriday il 26/03/2006
Cose varie al PC, sul Web e nella mente. Puoi scrivermi a: tanksgodisfriday@libero.it
 

 

« Sesso benedettoDov'è l'Azerbaijan? »

Al tirassegno - bis

Post n°1181 pubblicato il 17 Maggio 2009 da tanksgodisfriday
 

Alla
 soluzione del problema del tirassegno ci sono arrivato solo seguendo l'indicazione subliminale di donnesudestbarese: occorreva «un terno secco sulle ali... centrare, a volte, fa cadere tutto il castello!!!». Vale a dire colpire i pupazzi 25, 6 e 19. Solo così il puntaggio di quelli colpiti sommava esattamente 50, come richiesto dal problema.

Rimaneva da capire se esistevano altre soluzioni o se quella era l'unica possibile. Un problema costruito bene, come ci si aspetta che siano quelli di Sam Loyd, dovrebbe avere un'unica soluzione, d'altra parte le combinazioni possibili di un certo numero di pupazzi abbattuti sui 10 disponibili sono tante, per l'esattezza 2^10 - 1 = 1023, molte più del massimo totale possibile, 167, cioè la somma dei valori di tutti e 10 i pupazzi. Quindi il dubbio era legittimo.

Il modo più semplice per risolvere la questione è quello di elencare tutti e 1023 i risultati possibili con un semplice programma basic, e poi analizzare i risultati con excel; o meglio, visto che sto usando il netbook, con il foglio elettronico di open office.
Il risultato è che effettivamente quella soluzione (25, 6 e 19) è unica, mentre esistono diversi altri valori che è possibile ottenere in moltissimi modi. I punteggi più gettonati sono 76 e 91 (23 modi per realizzarli), seguiti da 82 e 85 (22 modi).
Poi giù giù fino ai valori che si possono ottenere in un unico modo. Quelli ottenibili con almeno tre pupazzi (con uno o due sarebbe troppo banale) sono 47 (25, 3 e 19) e, appunto, 50.

Per chi fosse interessato, il programma scritto in ubasic è riportato sotto.
La logica è abbastanza semplice: ogni giocata può essere vista come la rappresentazione binaria di un numero, con il valore "1" in corrispondenza dei pupazzi abbattuti, e "0" per quelli rimasti al loro posto. Basta quindi scorrere i numeri da 1 a 1023, calcolarne la rappresentazione binaria e sommare i valori dei pupazzi corrispondenti agli "1".

Buona domenica.
 
ps delle 18e30: apportata una piccola modifica (in meglio!) al programma.
 
100 print = print + "pupazzi.csv"
110 print "colpi,n.ro di colpi,somma"
120 np=10: dim p(np): f="----------"
130 nmax=2^np-1
140 p(1)=25: p(2)=27: p(3)=3: p(4)=12: p(5)=6
150 p(6)=15: p(7)=9: p(8)=30: p(9)=21: p(10)=19
200 for n0=1 to nmax
210 n=n0: s=0: j=1: a="": xp=0
220 r=n-2*int(n/2)
230 if r>0 then s=s+p(j): a=a+"x": xp=xp+1 else a=a+"-"
240 j=j+1: n=int(n/2)
250 if n>0 then 220
260 print left(a+f,np);",";xp;",";s
270 next n0
990 print=print
999 end

 
Rispondi al commento:
torospensierato
torospensierato il 17/05/09 alle 14:40 via WEB
ahhh beh !!! ^____^
 
* Tuo nome
Utente Libero? Effettua il Login
* Tua e-mail
La tua mail non verrà pubblicata
Tuo sito
Es. http://www.tuosito.it
 
* Testo
 
Sono consentiti i tag html: <a href="">, <b>, <i>, <p>, <br>
Il testo del messaggio non può superare i 30000 caratteri.
Ricorda che puoi inviare i commenti ai messaggi anche via SMS.
Invia al numero 3202023203 scrivendo prima del messaggio:
#numero_messaggio#nome_moblog

*campo obbligatorio

Copia qui:
 

Area personale

 

Ultimi commenti

Grazie, Maria! Un abbraccio.
Inviato da: tanksgodisfriday
il 17/01/2023 alle 18:30
 
Visitato il nuovo sito. Come sempre interessante e...
Inviato da: Fajr
il 17/01/2023 alle 17:14
 
Ho visitato il sito, è carino....peccato che non si può...
Inviato da: Mr.Loto
il 07/01/2023 alle 18:09
 
In realtà, "mi tawa" significa "io mi...
Inviato da: Marco Rossi
il 18/08/2019 alle 21:27
 
Tanti auguri di buone feste da kepago
Inviato da: amandaclark82
il 30/12/2016 alle 15:48
 
 

Translate!

 

Ultime visite al Blog

hesse_fossimoratanksgodisfridaycassetta2Fajrdue.pifupietrosparusolazzqqjigendaisukegiannigarzottocatone6565lilith_0404pavpao
 
 

networkedblogs.com

 
 

© Italiaonline S.p.A. 2024Direzione e coordinamento di Libero Acquisition S.á r.l.P. IVA 03970540963