« Utilisateur:Insane0 » : différence entre les versions
(citations polos) |
m (typo) |
||
Ligne 28 : | Ligne 28 : | ||
===Comment=== | ===Comment=== | ||
8173. | |||
==Explication des citations== | ==Explication des citations== | ||
Ligne 49 : | Ligne 49 : | ||
f ('-':i) (c:a) = c:g i a | f ('-':i) (c:a) = c:g i a | ||
f (b:i) a | f (b:i) a = b:f i a | ||
g ('[':i) a = h i a | g ('[':i) a = h i a | ||
g i a@(c:_) = c:f i a | g i a@(c:_) = c:f i a |
Version du 28 novembre 2009 à 22:49
Infos
Qui
Nom réel : Julien Cretin
Pseudos :
- insane0
- ia0
- tout ce qui matche i[a-z]{2}a[a-z]{2}0
Quoi
Mes postes :
- root
- news
- TV
- WiFi
- support@linux
- BLL
Quand
Promo 2006.
Comment
8173.
Explication des citations
Apparemment tout le monde n'a pas eu droit à l'explication de mes citations. Sachant qu'en plus il y a plein de manières de les expliquer. Je vais juste en donner quelques unes ici au fur et à mesure.
Les citations
Mes deux citations de polos 2006 étaient :
- (-[z]rtyg--p) (aen)
- (dv-[ra]e-jn-c) (oki)
Les solutions
Il y a plusieurs manières de résoudre ces citations. J'en rajouterai quand je trouverai le temps.
Algorithme en Haskell
Voici une première présentation de solution. Il s'agit d'un algorithme en Haskell (pourtant pas compliqué à deviner quand on voit les citations).
f ('-':i) (c:a) = c:g i a f (b:i) a = b:f i a g ('[':i) a = h i a g i a@(c:_) = c:f i a h (']':i) a = g i a h (b:i) a = b:h i a p y (*) i a = y i*y a y a = a++y a m = p y f i = m "dv-[ra]e-jn-c" "oki" a = m "-[z]rtyg--p" "aen"
Le résultat pour la citation de mon polo est dans la variable i. Le résultat pour mon anti-polo est dans la variable a. Les deux variables sont de type [Char]. Normalement ça devrait pas être trop dur de deviner les mots et de voir la relation entre polo et anti-polo.