Programmation Puzzles & Code Golf

9
Numérotation de permutation

Le défi Pour un ensemble donné de n entiers, écrivez un programme qui affichera son index lexicographique. Les règles L'entrée ne doit être qu'un ensemble d'entiers non négatifs uniques séparés par des espaces. Vous devez sortir l'index lexicographique (plage de 0 à n! -1 inclus) de la permutation....

9
Générez la table de groupe pour Z_n

Les groupes sont une structure largement utilisée en mathématiques et ont des applications en informatique. Ce défi de code concerne le moins de caractères pour créer une table de groupe pour le groupe additif Z n . Comment le tableau est construit: Pour Z n , les éléments sont {0, 1, 2, ..., n-1}....

9
Trouvez la prime la plus astucieuse

Intro Considérons le processus consistant à prendre un entier positif n dans une base b et à remplacer chaque chiffre par sa représentation dans la base du chiffre à droite. Si le chiffre à droite est un 0, utilisez la base b . Si le chiffre à droite est un 1, utilisez unaire avec 0 comme marque de...

9
Cordes d'accordage

Tâche Écrivez un programme pour déterminer la note émise, ainsi que le nombre de cents désaccordés, d'une corde accordée à une fréquence donnée et enfoncée à un moment donné. Par souci de simplicité, supposons que la fréquence du son produit et la longueur de la corde à droite de l'endroit où elle...

9
Valider les solutions Loopy

Ceci est un défi supplémentaire au défi de génération d'énigmes Loopy . Vous voudrez peut-être résoudre ce défi avant de tenter le défi le plus difficile du lien précédent. Le but de ce défi est de valider la solution d'un puzzle en boucle. Veuillez prendre toute la documentation sur ce qu'est un...

9
Le chemin forestier

Après votre désastreuse balade en canoë , vous avez fini par tomber d'une cascade au bout des rapides de la rivière. Votre canoë a explosé, mais vous avez réussi à survivre à l'explosion. Cependant, votre voyage sur la rivière a complètement disparu de la carte - vous vous êtes maintenant retrouvé...

9
Tiges de comptage; compte tes tiges

Quelques antécédents Les tiges de comptage sont de petites barres (3-14 cm de long) qui ont été utilisées par les mathématiciens de nombreuses cultures asiatiques pendant plus de 2000 ans pour représenter un nombre entier ou une fraction. (Dans ce défi, nous nous concentrerons sur les entiers non...

9
Générateur de code art ASCII

J'ai un programme qui génère du code Brainfuck formaté. Je lance mon programme ./example "S" et la sortie est +[>+ < +++ ] >--. qui imprime S dans Brainfuck. Votre objectif est d'écrire un programme qui accepte une chaîne en entrée et génère du code source dans une autre langue qui imprime...

9
Optimisation de la mémoire restreinte

La distance d'édition (ou Levenshtein) entre deux chaînes est le nombre minimal d'insertions, de suppressions et de substitutions de caractère unique nécessaires pour transformer une chaîne en l'autre. Si les deux chaînes ont chacune une longueur n, il est bien connu que cela peut se faire en temps...

9
Graphique des résultats de recherche Google

Lorsque vous recherchez quelque chose sur Google , il donne un message pratique en haut de la page disant quelque chose comme About 53,000,000 results (0.22 seconds). (Les chiffres changent en fonction de ce qui a été recherché bien sûr.) Dans ce défi, vous écrirez un programme qui dessine un...

9
Itération de Moore

Info Les nombres 1 à 9 représentent chacun une cellule dans le quartier de Moore , 5 étant la cellule centrale. Donc: 123 456 789 1={-1,-1} 2={-1, 0} 3={-1, 1} 4={ 0,-1} 5={ 0, 0} 6={ 0, 1} 7={ 1,-1} 8={ 1, 0} 9={ 1, 1} Le défi Vous pouvez saisir des données via STDIN, ARGV ou un argument de...

9
Générer des pavages Fibonacci valides

Contexte Le pavage Fibonacci est un pavage de la ligne (1D) utilisant deux segments: un court, S et un long, L (leur rapport de longueur est le nombre d'or, mais ce n'est pas pertinent pour ce défi). Pour qu'un carrelage utilisant ces deux prototiles soit réellement un carrelage de Fibonacci, les...

9
Trier par alphabet personnalisé

Le défi est de créer un programme qui trie une liste de mots, mais seulement que les mots doivent être dans l'ordre d'un alphabet donné au hasard. Votre programme acceptera une chaîne de mots séparés par des virgules et un nouvel alphabet. Votre programme affichera chaque mot de la même manière...

9
Bulgare Solitaire

Bulgarian Solitaire est un jeu solo rendu populaire par Martin Gardner dans sa chronique mathématique de Scientific American . Vous avez des Ncartes identiques, divisées en piles. Vous prenez une carte de chaque pile et formez une nouvelle pile avec les cartes retirées. Vous répétez ce processus...

9
Notes à la tablature

Défi Étant donné une liste de notes, vous devez renvoyer la tablature correspondante. Remarques Les notes doivent être comprises entre A et G inclus et la plage d'octave comprise entre 2 et 6 inclus. Le format est note-octave avec #représentant un tranchant et breprésentant un plat. Par exemple:...

9
Trou 2 - Prime Quine

Trouvez le trou 1 ici . Créez une quine qui, lorsqu'elle est exécutée, génère plusieurs fois son propre bloc de code source. En fait, il doit le sortir n fois, où n dans le prochain nombre premier. Je pense qu'un exemple le montre le mieux. [MY QUINE][MY QUINE] [MY QUINE][MY QUINE][MY QUINE] [MY...

9
Décomposer un nombre en une somme de chiffres

Les chiffres sont des nombres du formulaire a * (10^n - 1)/9avec a in [-9,9]\{0}(en d'autres termes 111, -3333, 66, des nombres qui sont faits en répétant un seul chiffre) Objectif: écrire un programme ou une fonction qui prend un seul entier positif Net s'imprime N = s_1 + s_2 + ... + s_k. Il doit...

9
Piège à souris de Michael Crichton

En 1984, Michael Crichton a écrit un programme de sécurité en BASIC qui a été publié dans le magazine Creative Computing. Le programme demanderait à l'utilisateur de taper une phrase de son choix, enregistrer les intervalles entre les frappes, puis lui demander de retaper la phrase. Si les horaires...