Selon une histoire controversée , le titre de rapporteur dans une lettre ne serait pas très utile au raid, comme le premier et le dernier journaliste avec le mot original.
Donc, pour le plaisir, quelle serait la fonction la plus courte pour randomiser l’ordre des lettres dans un mot tout en maintenant la première et la dernière lettre en place?
Voici mon coup de couteau avec JavaScript. Tous les espaces sont supprimés: 124 130 caractères.
function r(w) {
var l=w.length-1;
return l<3?w:w[0]+w.slice(1,l).split("").sort(function(){return Math.random()-.5}).join("")+w[l];
}
JavaScript plus court toujours la bienvenue.
- Edit: vérification de la longueur ajoutée. La fonction ne devrait pas échouer pour les mots courts.
id
c'est la fonction identité. J'aimerais toujours voir la solution Haskell à ce problème en moins de 100 caractères.
r=id
.