Tâche
Votre tâche consiste à imprimer ce texte exact:
A
BCD
EFGHI
JKLMNOP
QRSTUVWXY
ZABCDEFGHIJ
KLMNOPQRSTUVW
XYZABCDEFGHIJKL
MNOPQRSTUVWXYZABC
DEFGHIJKLMNOPQRSTUV
WXYZABCDEFGHIJKLMNOPQ
RSTUVWXYZABCDEFGHIJKLMN
OPQRSTUVWXYZABCDEFGHIJKLM
NOPQRSTUVWXYZABCDEFGHIJKLMN
OPQRSTUVWXYZABCDEFGHIJKLMNOPQ
RSTUVWXYZABCDEFGHIJKLMNOPQRSTUV
WXYZABCDEFGHIJKLMNOPQRSTUVWXYZABC
DEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKL
MNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVW
XYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJ
KLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXY
ZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOP
QRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHI
JKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZABCD
EFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZA
BCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKLMNOPQRSTUVWXYZ
Spécifications
- Vous pouvez le faire en minuscules au lieu de tout en majuscules.
- Les sauts de ligne à la fin du triangle sont autorisés.
- Les espaces de fin après chaque ligne sont autorisés.
- Vous devez imprimer sur STDOUT au lieu de générer un tableau de chaînes.
Notation
C'est du code-golf . Programme avec le plus petit nombre de victoires d'octets.
code-golf
ascii-art
kolmogorov-complexity
Leaky Nun
la source
la source
mod
fonction. Je peux en faire un moi-même si j'ai le temps.Réponses:
Vim, 29 octets
Où
↵
représente la touche Retour,♥
la touche Échap etβ
la touche Retour arrière.la source
␛
place de♥
. Et␈
au lieu deβ
. C'est pour cela que ces caractères Unicode ont été créés. utf8icons.com/subsets/control-picturesPython 2, 65 octets
la source
Gelée , 10 octets
Essayez-le en ligne!
Comment ça marche
la source
ṁ
c'est super !! [en attente de félicitations pour 100k rep]H
est de moitié etḤ
est son inverse ( unhalve )./2
ou*2
, donc c'est "Halve" ou "Double". Voilà pourquoi j'étais confus.27Ḷ²IRØAṁY
51Rm2RØAṁY
VBA Excel (80 octets, 1742 octets)
Excel, 1742 octets
Inspiré par la réponse créative de l'ugoren , j'ai réussi à trouver une formule Excel pour créer le motif comme indiqué dans l'OP.
Collez cette formule dans la cellule A1, puis faites-la glisser sur toute la plage A1: A26.
La longueur de la formule est de 67 octets mais vous devez la répliquer 26 fois, elle est donc égale à 67 * 26 = 1742 octets. Voici la sortie:
Excel VBA, 80 octets
Il est désormais possible d'intégrer Excel à VBA pour automatiser le processus et économiser de nombreux octets, car VBA est intégré à la plupart des applications Microsoft Office, y compris Excel. Écrivez et exécutez le code suivant dans la fenêtre Exécution (utilisez les touches de combinaison CTRL+ Gpour l'afficher dans Visual Basic Editor):
Le programme fonctionne en imprimant la formule Excel ci-dessus dans la plage A1: A26. Malheureusement, Excel et VBA n'ont pas d'alphabet intégré.
la source
Haskell, 67 octets
Une récursivité simple sur la longueur
i
de la ligne. À chaque étape, lesi
caractères suivants sont extraits d'une répétition infinie de l'alphabet.la source
Mathematica, 90 octets
Fonction anonyme. Ne prend aucune entrée et renvoie une chaîne en sortie. Suggestions de golf bienvenues. Un exemple de ce qui
Internal`PartitionRagged
fait:la source
C, 79 octets
Ma première réponse en C \ o /
Les suggestions de golf sont plus que bienvenues.
la source
i;main(j){while(i<676)printf("\n%c"+(j*j^i++||!j++),i%26+65);}
i;main(j){for(;j<27;j*j^++i||puts("",j++))putchar(i%26+65);}
Brachylog , 37 octets
Essayez-le en ligne!
Explication
Prédicat principal:
Prédicat 1: utilisé pour générer des chaînes variables de longueurs impaires.
la source
Z
car26
est sans carré.Pyth , 12 octets
Essayez-le en ligne!
la source
JavaScript (ES6), 77
82 88EcmaScript 6 requis juste pour enregistrer 1 octet en utilisant un littéral de chaîne de modèle pour la nouvelle ligne.
Moins golfé
Tester
la source
Perl,
424139 octetsJuste le code:
Une version plus courte évidente déclenche malheureusement un problème perl interne (utilisation de la valeur libérée dans l'itération):
la source
JavaScript, 129 octets
la source
[...'ABCDEFGHIJKLMNOPQRSTUVWXYZ']
au lieu de'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.split``
.Pyke, 14 octets
Essayez-le ici!
la source
Aller, 133 octets
la source
MATLAB,
112109 95 7977 octetsCela fonctionnera également avec Octave , vous pouvez essayer en ligne ici .
Donc, après quelques changements majeurs, j'ai enregistré
1432 octets supplémentaires . Celui-ci devient beaucoup plus semblable à la longueur que j'attendais de MATLAB. J'ai laissé l'ancienne version ci-dessous car elle est sensiblement différente.Version originale:
Wow celui-là a fini par être plus long que je ne le pensais. Je vais voir si je ne peux pas en supprimer quelques octets.
Une version non golfée pour expliquer:
Remerciements
la source
XPath 3.0 (et XQuery 3.0), 84 octets
Explication:
(1 to 26)!(65 to 90)
est l'alphabet 26 fois(0 to 25)!(subsequence(XX, start, len),10)
en prend 26 sous-séquences, chacune suivie d'une nouvelle lignesubsequence(X, .*.+1, 2*.+1)
prend des sous-séquences successives avec position de départ et longueur: (1, 1), (2, 3), (5, 5), (10, 9) etc.codepoints-to-string()
transforme les points de code Unicode en caractèresla source
Rubis, 46 octets
Voir sur ideone: http://ideone.com/3hGLB0
la source
05AB1E (alternatif) 15 octets
Essayez-le en ligne!
Explication:
la source
R,
120115111 octetsNon golfé:
Fondamentalement,
b
est le vecteur des nombres impairs entre1
et51
, donnant ainsi la longueur de chaque ligne. Évidemment, lasum
fonction additionne les nombres de ce vecteur et donne les index de début et de fin.-5 octets grâce à @plannapus!
-4 octets grâce à @plannapus!
la source
a
fois, vous n'avez pas vraiment besoin de le définir, ce qui signifie que vous pouvez raser quelques octets de plus:b=seq(1,51,2);v=c();for(i in 1:26){v=c(v,c(rep(LETTERS,26)[(sum(b[1:i-1])+1):sum(b[1:i])],"\n"))};cat(v,sep="")
fonctionne.b=seq
pièce dans le corps principal, donc c'est encore moins lisible!R,
81 73 6563 octetsUne
for
approche en boucle simple . Répétez l'alphabet 26 fois et parcourez une plage d'index mobile calculée à l'aide de(i^2-2*i+2):i^2
.la source
Husk , 10 octets
Essayez-le en ligne!
Explication
la source
Lot, 123 octets
la source
05AB1E ,
1817 octetsExplication
Essayez-le en ligne!
la source
Rexx,
7472 octetsNon golfé:
la source
TSQL, 129 octets
UTILISER MASTER au début du script est de s'assurer que la requête est exécutée dans la base de données master qui est par défaut pour de nombreux utilisateurs (sans compter les octets pour cela).
Golfé:
Non golfé:
Violon
Fiddle pour les anciennes versions utilisant le chemin xml
la source
PowerShell, 68 octets
La section précédant le premier point-virgule produit une chaîne contenant 26 copies de l'alphabet majuscule. La section suivante injecte des sauts de ligne à l'index de chaque nombre carré (en travaillant en arrière donc je n'ai pas à tenir compte du décalage). Enfin, le
$a
à la fin pousse simplement cette variable de chaîne sur l'équivalent de PowerShellSTDOUT
.la source
Dyalog APL, 18 octets
↑2{⍺↓⍵⍴⎕a}/×⍨0,⍳26
la source
C, 60 octets
la source
puts
ne prend qu'un seul argument. (Certains comportements indéfinis sont autorisés dans codegolf normalement, mais c'est un peu trop loin des couloirs habituels)C ++, 111 octets
Essayez d'abord l'un d'entre eux. Utilise un int "c" pour enregistrer la lettre à imprimer à tout moment. Une fois que "c" dépasse 90 ('Z'), il est réinitialisé à 65 ('A'). Imprime la pyramide à l'aide de boucles.
la source
if(c<92)c=65
pour supprimer un octet, et vous pourriez également le faire à laint a()
place devoid a()
, mais je ne suis pas sûr si cela fonctionne sans le retour. Autre que cela, je pense que vous devez inclure#include <iostream>
dans votre nombre d'octets.if(c>90)c=65
, mais merci pour la suggestion, c'est une bonne idée. Aussi, je suppose que je vais l'inclure, merci.PHP,
7669 octetsla source