Intro
Vous êtes assis dans une salle du conseil au bout d'une longue table. Vous regardez autour de vous et voyez Tim Cook, le conseil d'administration d'Apple, le fantôme de Steve Jobs et Jack Donaghy. Apple a convoqué cette réunion parce qu'ils ont réalisé à quel point l'écran de verrouillage Android est plus cool et qu'ils veulent les 1-UP. Tout le monde dans la pièce vous regarde tandis que le fantôme Steve crie: "Aidez-moi, CodeGolf Man! Vous êtes mon seul espoir!"
Le problème
L'écran de verrouillage Android est une grille de points 3 x 3 qui peut être connectée en faisant glisser un doigt d'un point au suivant, créant un chemin. Un mot de passe est considéré comme tout chemin possible qui inclut un nombre quelconque de points et exclut un nombre illimité de points. (Sur un téléphone réel, le chemin doit être d'au moins 4 points. Pour ce défi, ignorez cette restriction.) Apple prévoit de remplacer la grille 3 x 3 par une grille M x N, qui est (M * N) / 9 fois mieux!
Règles:
Par exemple, sur une grille 3x3 avec des points numérotés de 1 à 9:
1 2 3
4 5 6
7 8 9
Certains chemins valides sont:
1
3
7,2,3
1,5,9,2
1,8,6,5,4
4,2,3,5,6,7,8,9
5,9,6,4
Et certains chemins invalides sont:
1,3
1,9,5
7,5,4,7
4,6
Votre entrée sera composée de trois chiffres:
(M,N,d)
Où la grille est M x N, et d est la longueur du chemin
1 <= M <= 16
1 <= N <= 16
1 <= d <= M * N
Votre programme ou fonction recevra l'entrée sous la forme d'une chaîne séparée par des virgules et devra renvoyer le nombre de mots de passe possibles de cette longueur. Par exemple:
Input: 2,2,1
Output: 4
Input: 2,2,2
Output: 12
Input: 7,4,1
Output: 28
Les règles de golf du code standard s'appliquent, le code le plus court gagne!
//If I've made a mistake or the rules are unclear, please correct me!
256!
permutations des points sur la grille 16 x 16 représente un modèle de déverrouillage valide. En pratique, un tel programme ne se terminerait jamais.