|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
[Contest] Spy Game
Buongiorno!
Ho ricevuto un dispaccio che non riesco a comprendere e ho pensato di condividerlo con voi che siete più intelligenti di me. I servizi hanno scoperto una serie di mail tra un certo Dylan e qualche suo conoscente. Dylan pare lavori per un'associazione sovversiva che si fa chiamare Mutually Assured Destruction Theorists, anche conosciuta come M.A.D.T., ed è sparito dalla circolazione recentemente. Pare che le mail contengano parti di un codice segreto che va in qualche modo ricostruito. Non si sa come, e soprattutto non si sa a cosa serva... i servizi sperano che lo scopriate durante l'investigazione! Si è scoperto che Dylan è un ex-matematico diventato terrorista, quindi per lui pare sia stato impossibile resistere alla tentazione di nascondere i codici segreti dietro una serie di problemi. I problemi possono essere risolti in vari modi, ma quello che i servizi consigliano consiste nel creare piccoli programmi nel vostro linguaggio di programmazione preferito in modo da poter risolvere problemi simili nel prossimo futuro. Come noterete, l'ultima mail non contiene un problema da risolvere, ma solo un sito dove si suppone sia stato memorizzato l'ultimo codice. Lo so, siete programmatori e non hacker che violano siti web, ma mai come in questo caso vale il detto "Improvvisare, adattarsi, raggiungere lo scopo" (cit.). Ah, un'ultima cosa: i servizi indicano come termine per la risoluzione dell'enigma il giorno 1 Maggio 2012... ma non sappiamo perché, è solo una voce di corridoio. Queste le mail intercettate... Codice:
Ciao Jim! Come ben sai sto per imbarcarmi in una missione molto pericolosa per conto della M.A.D.T. e non so quando ci rivedremo. Ho deciso di dividere un'informazione di vitale importanza tra i miei amici più fidati. Siccome sei sempre stato uno smanettone, credo che ti divertirai di più così... La tua parte di segreto corrisponde al 1_000_001-esimo numero primo. Saluti, Dylan Codice:
Hey Richard! Come ben sai sto per imbarcarmi in una missione molto pericolosa per conto della M.A.D.T. e non so quando ci rivedremo. Ho deciso di dividere un'informazione di vitale importanza tra i miei amici più fidati. La tua parte di codice consiste nel calcolare il numero di zeri alla fine del fattoriale del 1_000_001-esimo numero primo! :-) Alla prossima, Dylan Codice:
Frank! Come ben sai sto per imbarcarmi in una missione molto pericolosa per conto della M.A.D.T. e non so quando ci rivedremo. Ho deciso di dividere un'informazione di vitale importanza tra i miei amici più fidati. Per la tua parte di segreto ho una storia da raccontarti. Una volta, quando lavoravo per la Germania Est, ho avuto un incarico governativo presso il Primo Ministro. Un giorno qualcuno decise che avremmo dovuto riorganizzare gli uffici, cambiando tutti i numeri delle stanze. Questo mandò su tutte le furie il Primo Ministro, che andava fiero della sua stanza 1373! Essendo il Primo Ministro non poteva sopportare che il suo ufficio avesse un numero di stanza che non fosse un numero primo! E come biasimarlo! Ma non solo, non poteva nemmeno sopportare che durante il cambio di numero qualcuno attaccasse la cifra sbagliata rendendo temporaneamente il numero non primo! Se avesse dovuto cambiare dalla stanza 1373 alla 8017 e qualcuno avesse cominciato attaccando un 8 alla prima cifra, il Primo Ministro sarebbe andato su tutte le furie perché 8373 non è un numero primo! Ogni cambio di cifra costò all'ufficio 1 Marco. Mi toccò sviluppare un programma che calcolasse il costo minore passando da un numero primo all'altro passando solo attraverso altri numeri primi! Ad esempio, cambiando da 1033 a 8179 costava 6 Marchi. Un esempio di percorso più breve infatti è: 1033 1733 3733 3739 3779 8779 8179 La tua parte di codice è il prodotto dei costi minori tra 1373 -> 8017 e 5413 -> 4327. Certo, potresti pure farlo a mano... ma saresti sicuro del risultato? E soprattutto, ti divertiresti? :-P Saluti, Dylan Codice:
Carissima Maya, sai bene della mia missione e non mi dilungherò su questo... Per tutto quello che ci ha legati e per il fatto che non sei mai stata una smanettona, non posso rifilarti un problema da risolvere per scoprire la tua parte di segreto. L'ho semplicemente messa al sicuro al solito posto: http://bit.ly/HUYGVU A presto, Dylan
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers Ultima modifica di shinya : 22-04-2012 alle 10:36. |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
PS.
Chi arriva primo, vince. (Capirete poi perché) Non mi sono sbattuto troppo, non ho modo di tracciare chi ha vinto il contest. Non fate troppo casino sull'interwebz, please. Se avete dubbi o domande che credete possano interessare tutti, scrivete sul forum. Se avete segnalazioni (bug/errori/ecc...) mandatemi un messaggio privato e vedrò di correggere ASAP. C'è una parte di trial & error, quindi se vi bloccate in qualche punto, prima di chiedere, fate qualche prova Buon divertimento
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers Ultima modifica di shinya : 20-04-2012 alle 08:30. |
|
|
|
|
|
#3 | |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Se uno ha trovato la soluzione che fa, la posta direttamente qui o la spedisce a te? (se pubblica subito la soluzione e il termine non è ancora scaduto spoilera a tutti gli altri...)
@EDIT: Quote:
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) Ultima modifica di banryu79 : 20-04-2012 alle 10:17. |
|
|
|
|
|
|
#4 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
Ma hai già risolto tutto?
Se uno ha trovato la soluzione, deve farci qualcosa da qualche parte... (ovviamente non deve postarla qui...)
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers |
|
|
|
|
|
#5 |
|
Senior Member
Iscritto dal: May 2008
Messaggi: 533
|
■
Ultima modifica di rеpne scasb : 18-06-2012 alle 17:21. |
|
|
|
|
|
#6 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
Scusa... ecco appunto, quando uno è fulminato è fulminato...
Era "il numero di zeri alla fine del FATTORIALE del 1_000_001 numero primo"... correggo nel primo messaggio, sorry
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers |
|
|
|
|
|
#7 |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Grandino...
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. |
|
|
|
|
|
#8 |
|
Senior Member
Iscritto dal: May 2008
Messaggi: 533
|
■
Ultima modifica di rеpne scasb : 18-06-2012 alle 17:21. |
|
|
|
|
|
#9 |
|
Senior Member
Iscritto dal: May 2004
Città: Londra (Torino)
Messaggi: 3692
|
Commentavo sul numero, non sulla metodologia per calcolare la risposta.
E comunque non e' un quesito informatico, piuttosto matematico. Per il terzo, piu' interessante, mi sto attrezzando
__________________
Se pensi che il tuo codice sia troppo complesso da capire senza commenti, e' segno che molto probabilmente il tuo codice e' semplicemente mal scritto. E se pensi di avere bisogno di un nuovo commento, significa che ti manca almeno un test. Ultima modifica di gugoXX : 22-04-2012 alle 20:19. |
|
|
|
|
|
#10 |
|
Senior Member
Iscritto dal: Jan 2004
Città: Modena
Messaggi: 382
|
Si può avere un piccolo indizio sull'ultimissimo algoritmo
__________________
Ho trattato con: MLK - mus - repietra - atlas4877 - gnxgae - lunaticgate - MagnoGabri - Fabbry - Sclergio |
|
|
|
|
|
#11 | |
|
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
Quote:
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers |
|
|
|
|
|
|
#12 | |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
|
|
|
|
|
|
#13 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
Complimenti a rage88 che ha risolto l'enigma e nel contempo salvato il mondo!
Kudos! You win cake! ![]() ps. the cake is a lie... EDIT: se a qualcuno interessa provare l'ultimo step per arrivare al codice finale posso ripristinare l'ultimo sito... fatemi sapere.
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers Ultima modifica di shinya : 26-04-2012 alle 17:09. |
|
|
|
|
|
#14 |
|
Senior Member
Iscritto dal: Jan 2004
Città: Modena
Messaggi: 382
|
Può interessare a qualcuno se stasera posto gli algoritmi che ho usato?
__________________
Ho trattato con: MLK - mus - repietra - atlas4877 - gnxgae - lunaticgate - MagnoGabri - Fabbry - Sclergio |
|
|
|
|
|
#15 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
Ok, resettato!
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers |
|
|
|
|
|
#16 | |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
Quote:
Chiaramente non si tratta di crackare il sito, presumo si abbia già in mano tutto per sgarrupare la password (le soluzioni dei 3 problemi). Ma non ho la più pallida idea di come usarle Accetto ben volentieri un pm
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) |
|
|
|
|
|
|
#17 | |
|
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
Quote:
Puoi aggirare il controllo su user/password. O conoscere la password, ovviamente
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers |
|
|
|
|
|
|
#18 |
|
Senior Member
Iscritto dal: Oct 2007
Città: Padova
Messaggi: 4131
|
![]() Solved! @EDIT: 1) Un ringraziamento a shinya per il bel contest: era dai tempi della "caccia al tesoro" che non mi divertivo così 2) e un grazie anche a repne e al suo post, senza il quale non avrei mai risolto il secondo problema (mi sarei stancato prima)
__________________
As long as you are basically literate in programming, you should be able to express any logical relationship you understand. If you don’t understand a logical relationship, you can use the attempt to program it as a means to learn about it. (Chris Crawford) Ultima modifica di banryu79 : 27-04-2012 alle 12:07. |
|
|
|
|
|
#19 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers |
|
|
|
|
|
#20 |
|
Senior Member
Iscritto dal: Jul 2005
Città: Bologna
Messaggi: 1130
|
Dato che mi pare l'interesse si sia smorzato, per quanto mi riguarda potete anche postare gli algoritmi/script che avete usato per risolvere i problemi e gli errori e gli abbagli che avete fatto
Se per voi va bene tiro giù anche i vari siti che ho messo su per il contest, dato che non intendo mantenerli più del dovuto...
__________________
-> The Motherfucking Manifesto For Programming, Motherfuckers |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 21:35.






















