Contribution:
Deux entiers: un négatif, un positif.
Production:
Sur la première ligne, sortie du plus bas au plus haut. Sur la deuxième ligne, nous avons supprimé les numéros les plus élevés et les plus bas et signé tous les numéros individuels. Sur la troisième ligne, nous avons à nouveau supprimé les numéros les plus élevés et les plus bas et signé à nouveau tous les numéros individuels. etc. (L'exemple ci-dessous devrait rendre le défi plus clair.)
Important: De plus, nous ajoutons des espaces afin que les nombres dans une colonne soient tous alignés (à droite).
L'alignement minimal est la partie principale de ce défi, cela signifie que vous ne pouvez pas simplement faire en sorte que chaque numéro ait la même largeur. La largeur d'une colonne est basée sur la plus grande largeur de nombre de cette colonne spécifique (et la séquence avec changement de signe vise à donner aux nombres une certaine variété de largeur par colonne).
Par exemple:
Input: -3,6
Output:
-3,-2,-1, 0, 1, 2, 3, 4,5,6 // sequence from lowest to highest
2, 1, 0,-1,-2,-3,-4,-5 // -3 and 6 removed; then all signs changed
-1, 0, 1, 2, 3, 4 // 2 and -5 removed; then all signs changed again
0,-1,-2,-3 // -1 and 4 removed; then all signs changed again
1, 2 // 0 and -3 removed; then all signs changed again
// only two numbers left, so we're done
Comme vous pouvez le voir ci-dessus, des espaces sont ajoutés aux nombres positifs, lorsqu'ils partagent une colonne avec des nombres négatifs pour compenser le -
(la même chose s'appliquerait aux nombres à 2 chiffres).
Règles du défi:
- L'entrée doit être composée de deux entiers
- Vous pouvez supposer que ces nombres entiers sont dans la plage
-99
-99
(inclus). - Le premier entier sera négatif et l'autre sera positif.
- Vous pouvez supposer que ces nombres entiers sont dans la plage
- La sortie peut être dans n'importe quel format raisonnable, tant qu'il est clair qu'il y a des lignes et des colonnes correctement alignées: Ie STDOUT; retour en tant que chaîne avec des nouvelles lignes; retour sous forme de liste de chaînes; etc. Votre appel.
- La sortie doit également contenir un délimiteur de votre choix (sauf pour les espaces, les tabulations, les nouvelles lignes, les chiffres ou
-
): Ie,
; et;
et|
; etX
; etc. sont tous des délimiteurs acceptables. - Les lignes de sortie peuvent ne pas contenir de délimiteur de début ou de fin.
- La sortie peut contenir UNE nouvelle ligne de fin et n'importe quelle ligne peut contenir un nombre quelconque d'espaces de fin.
Règles générales:
- C'est le code-golf , donc la réponse la plus courte en octets l'emporte.
Ne laissez pas les langues de golf de code vous décourager de publier des réponses avec des langues autres que le golf de code. Essayez de trouver une réponse aussi courte que possible pour «n'importe quel» langage de programmation. - Des règles standard s'appliquent à votre réponse, vous êtes donc autorisé à utiliser STDIN / STDOUT, des fonctions / méthodes avec les paramètres appropriés, des programmes complets. Ton appel.
- Les failles par défaut sont interdites.
- Si possible, veuillez ajouter un lien avec un test pour votre code.
- Veuillez également ajouter une explication si nécessaire.
Cas de test:
Input: -3,6
Output:
-3,-2,-1, 0, 1, 2, 3, 4,5,6
2, 1, 0,-1,-2,-3,-4,-5
-1, 0, 1, 2, 3, 4
0,-1,-2,-3
1, 2
Input: -1,1
Output:
-1,0,1
0
Input: -2,8
Output:
-2,-1, 0, 1, 2, 3, 4, 5, 6,7,8
1, 0,-1,-2,-3,-4,-5,-6,-7
0, 1, 2, 3, 4, 5, 6
-1,-2,-3,-4,-5
2, 3, 4
-3
Input: -15,8
Output:
-15,-14,-13,-12,-11,-10,-9,-8,-7,-6,-5,-4,-3,-2,-1, 0, 1, 2, 3, 4, 5, 6,7,8
14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0,-1,-2,-3,-4,-5,-6,-7
-13,-12,-11,-10, -9, -8,-7,-6,-5,-4,-3,-2,-1, 0, 1, 2, 3, 4, 5, 6
12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0,-1,-2,-3,-4,-5
-11,-10, -9, -8, -7, -6,-5,-4,-3,-2,-1, 0, 1, 2, 3, 4
10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0,-1,-2,-3
-9, -8, -7, -6, -5, -4,-3,-2,-1, 0, 1, 2
8, 7, 6, 5, 4, 3, 2, 1, 0,-1
-7, -6, -5, -4, -3, -2,-1, 0
6, 5, 4, 3, 2, 1
-5, -4, -3, -2
4, 3
Input: -3,15
Output:
-3,-2,-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13,14,15
2, 1, 0,-1,-2,-3,-4,-5, -6,-7, -8, -9,-10,-11,-12,-13,-14
-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13
0,-1,-2,-3,-4,-5,-6,-7, -8,-9,-10,-11,-12
1, 2, 3, 4, 5, 6, 7, 8, 9,10, 11
-2,-3,-4,-5,-6,-7,-8,-9,-10
3, 4, 5, 6, 7, 8, 9
-4,-5,-6,-7,-8
5, 6, 7
-6
Input: -12,12
Output:
-12,-11,-10,-9,-8,-7,-6,-5,-4,-3,-2,-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,11,12
11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, 0,-1,-2,-3,-4,-5,-6,-7,-8,-9,-10,-11
-10, -9, -8,-7,-6,-5,-4,-3,-2,-1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9,10
9, 8, 7, 6, 5, 4, 3, 2, 1, 0,-1,-2,-3,-4,-5,-6,-7,-8,-9
-8, -7, -6,-5,-4,-3,-2,-1, 0, 1, 2, 3, 4, 5, 6, 7, 8
7, 6, 5, 4, 3, 2, 1, 0,-1,-2,-3,-4,-5,-6,-7
-6, -5, -4,-3,-2,-1, 0, 1, 2, 3, 4, 5, 6
5, 4, 3, 2, 1, 0,-1,-2,-3,-4,-5
-4, -3, -2,-1, 0, 1, 2, 3, 4
3, 2, 1, 0,-1,-2,-3
-2, -1, 0, 1, 2
1, 0, -1
0
-99
la plus grande entrée positive possible99
.Réponses:
Gelée ,
252420 octetsIl s'agit d'un lien dyadique qui renvoie un tableau de lignes.
Essayez-le en ligne!
Comment ça fonctionne
la source
05AB1E , 59 octets
Encore une fois, je suis foutu par le même bug que j'ai écrit un correctif il y a des mois mais que je n'ai jamais poussé ... Le
golf devrait quand même être possible.
Essayez-le en ligne!
la source
ŸÐ',ý,gÍ;µ¦¨(D',ý,¼
il ne correspond pas tout à fait aux spécifications de formatage, voyez si vous pouvez l'améliorer;)Ÿ[Ðg1‹#',ý,¦(¨
suffirait sinon :)Java 8,
483480486† 467 octets† Octets levés en raison d'une correction de bogue.
Ok, cela a pris BEAUCOUP plus de temps (et d'octets) que je ne le pensais (en Java c'est-à-dire ..). Cela peut certainement être joué un peu plus, probablement en utilisant une approche complètement différente au lieu de créer un tableau de grille NxN pour remplir puis `` supprimer '' les zéros (avec un cas de bord ennuyeux pour le cas de test de
-1,1
, ainsi que-12,12
) .Essayez-le en ligne.
Explication:
la source
Javascript (ES6), 269 octets
Expliqué:
la source
QBIC , 46 octets
Comment ça fonctionne:
Heureusement, lors de l'impression d'un nombre, QBasic ajoute automatiquement le remplissage nécessaire.
la source
q
la valeur par défaut commence à 1? Est-ce que toutes les valeurs dans QBIC commencent à 1, ou est-ce qu'il manque quelque chose ici? Et quel est led
/ où signifie led
? Ou est-ce qued
le numéro actuel dans la boucle et?
simplement un nécessaire sont délimités dans le code de la boucle for (au lieu d'?
être le numéro actuel, c'est ainsi que je l'ai lu initialement)?q
commence à 1. Toutes les lettres minuscules sont des nombres vars et les lettresq-z
sont initialisées à1-10
. Et plusieurs commandes attribuent automatiquement des numéros dans l'ordre où ils se trouvent dans le code.d
est en effet l'itérateur de la boucle FOR interne. Pour plus de détails, voir aussi la vitrine - ou celle-ciPerl 6 , 146 octets
Essayez-le
Produit une séquence de chaînes
Étendu:
la source
PHP 7.1, 277 octets
Interprète en ligne
la source
Application console C # 196 octets
la source
Javascript -
196185176 octetsJe ne suis pas vraiment au courant de certaines des nouvelles techniques JS, donc cela pourrait probablement être beaucoup plus joué.
Crée simplement un bon tableau HTML à l'ancienne sans largeur définie pour les cellules, de sorte que la première ligne par défaut correspond à la largeur de chaque espacement optimal. Il (ab) utilise également la «fonctionnalité» de HTML de ne pas exiger de balises de fermeture si une nouvelle balise d'ouverture arrive en premier.
la source
Python 2 - 208 octets
Essayez-le en ligne
Crée un tableau de valeurs de remplissage, puis l'utilise pour construire les chaînes formatées nécessaires
Explication:
la source
,
et;
et|
sont tous des délimiteurs acceptables. " Actuellement, vous utilisez un espace comme délimiteur. Mais la principale difficulté de la largeur a bien été résolue, vous vous débrouillez bien jusqu'à présent! Seul ce petit changement, et alors il faut le faire. :)%l[i], range
nécessaire?)