var QUESTION_ID=91182,OVERRIDE_USER=26997;function answersUrl(e){return"https://api.stackexchange.com/2.2/questions/"+QUESTION_ID+"/answers?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+ANSWER_FILTER}function commentUrl(e,s){return"https://api.stackexchange.com/2.2/answers/"+s.join(";")+"/comments?page="+e+"&pagesize=100&order=desc&sort=creation&site=codegolf&filter="+COMMENT_FILTER}function getAnswers(){jQuery.ajax({url:answersUrl(answer_page++),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){answers.push.apply(answers,e.items),answers_hash=[],answer_ids=[],e.items.forEach(function(e){e.comments=[];var s=+e.share_link.match(/\d+/);answer_ids.push(s),answers_hash[s]=e}),e.has_more||(more_answers=!1),comment_page=1,getComments()}})}function getComments(){jQuery.ajax({url:commentUrl(comment_page++,answer_ids),method:"get",dataType:"jsonp",crossDomain:!0,success:function(e){e.items.forEach(function(e){e.owner.user_id===OVERRIDE_USER&&answers_hash[e.post_id].comments.push(e)}),e.has_more?getComments():more_answers?getAnswers():process()}})}function getAuthorName(e){return e.owner.display_name}function process(){var e=[];answers.forEach(function(s){var r=s.body;s.comments.forEach(function(e){OVERRIDE_REG.test(e.body)&&(r="<h1>"+e.body.replace(OVERRIDE_REG,"")+"</h1>")});var a=r.match(SCORE_REG);a&&e.push({user:getAuthorName(s),size:+a[2],language:a[1],link:s.share_link})}),e.sort(function(e,s){var r=e.size,a=s.size;return r-a});var s={},r=1,a=null,n=1;e.forEach(function(e){e.size!=a&&(n=r),a=e.size,++r;var t=jQuery("#answer-template").html();t=t.replace("{{PLACE}}",n+".").replace("{{NAME}}",e.user).replace("{{LANGUAGE}}",e.language).replace("{{SIZE}}",e.size).replace("{{LINK}}",e.link),t=jQuery(t),jQuery("#answers").append(t);var o=e.language;/<a/.test(o)&&(o=jQuery(o).text()),s[o]=s[o]||{lang:e.language,user:e.user,size:e.size,link:e.link}});var t=[];for(var o in s)s.hasOwnProperty(o)&&t.push(s[o]);t.sort(function(e,s){return e.lang>s.lang?1:e.lang<s.lang?-1:0});for(var c=0;c<t.length;++c){var i=jQuery("#language-template").html(),o=t[c];i=i.replace("{{LANGUAGE}}",o.lang).replace("{{NAME}}",o.user).replace("{{SIZE}}",o.size).replace("{{LINK}}",o.link),i=jQuery(i),jQuery("#languages").append(i)}}var ANSWER_FILTER="!t)IWYnsLAZle2tQ3KqrVveCRJfxcRLe",COMMENT_FILTER="!)Q2B_A2kjfAiU78X(md6BoYk",answers=[],answers_hash,answer_ids,answer_page=1,more_answers=!0,comment_page;getAnswers();var SCORE_REG=/<h\d>\s*([^\n,]*[^\s,]),.*?(\d+)(?=[^\n\d<>]*(?:<(?:s>[^\n<>]*<\/s>|[^\n<>]+>)[^\n\d<>]*)*<\/h\d>)/,OVERRIDE_REG=/^Override\s*header:\s*/i;
body{text-align:left!important}#answer-list,#language-list{padding:10px;width:290px;float:left}table thead{font-weight:700}table td{padding:5px}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> <link rel="stylesheet" type="text/css" href="//cdn.sstatic.net/codegolf/all.css?v=83c949450c8b"> <div id="answer-list"> <h2>Leaderboard</h2> <table class="answer-list"> <thead> <tr><td></td><td>Author</td><td>Language</td><td>Size</td></tr></thead> <tbody id="answers"> </tbody> </table> </div><div id="language-list"> <h2>Winners by Language</h2> <table class="language-list"> <thead> <tr><td>Language</td><td>User</td><td>Score</td></tr></thead> <tbody id="languages"> </tbody> </table> </div><table style="display: none"> <tbody id="answer-template"> <tr><td>{{PLACE}}</td><td>{{NAME}}</td><td>{{LANGUAGE}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr></tbody> </table> <table style="display: none"> <tbody id="language-template"> <tr><td>{{LANGUAGE}}</td><td>{{NAME}}</td><td>{{SIZE}}</td><td><a href="{{LINK}}">Link</a></td></tr></tbody> </table>
Réponses:
Excel VBA,
142179175160155 octetsInstruction:
Définissez la feuille de calcul d'Excel où la cellule A1 est entrée et la colonne C comme sortie.
Définissez l'alignement du texte dans la colonne C au centre. Écrivez et exécutez le code suivant dans la fenêtre Immédiate:Ungolfed le code:
Sortie:
Remarque: la police et la couleur ne sont qu'un choix personnel.
15 octets sauvés grâce à la suggestion de edc65. Merci.
5 octets sauvés en raison de la suggestion de TaylorScott. Merci.
la source
"_"
à T. Comme ceci[C1]="|":[C2]="/_\":T=[A1]&" ":For i=1To Len(T):Cells(i+2,3)="|"&Mid(T,i,1)&"|":Next:Cells(i+2,3)="/__\":Cells(i+4,3)="VvV":Columns(3).HorizontalAlignment=-4108
[C:C].HorizontalAlignment=-4108:[C1]="|":[C2]="/_\":T=[A1]&"_":For i=1To Len(T):Cells(i+2,3)="|"&Mid(T,i,1)&"|":Next:Cells(i+2,3)="/__\":Cells(i+3,3)="VvV
[C:C].HorizontalAlignment=3:[C1]="|":[C2]="/_\":T=[A1]&"_":For i=1To Len(T):Cells(i+2,3)="|"&Mid(T,i,1)&"|":Next:Cells(i+2,3)="/___\":Cells(i+3,3)="VvV
Perl 6, 75 octets
la source
slurp.chomp.comb
... Perl est bizarre.{[~] " |\n /_\\\n",|(" |$_|\n"for $_.comb)," |_|\n/___\\\n VvV"}
65 octetsJavaScript (ES6), 54
Simple
Tester
la source
En fait, 40 octets
Oui, ces nouvelles lignes sont supposées être là.
Essayez-le en ligne!
Explication:
Les nouvelles lignes sont représentées par
\n
pour faciliter le formatagela source
C,
83, 82 octetsTest principal:
la source
F(char*c){for(puts(" |\n /_\\");*c;printf(" |%c|\n",*c++),puts(" |_|\n/___\\\n VvV");}
puts
ne doit être exécuté qu'une seule fois, pas après chaqueprintf
. Mais oui, 1 octet enregistré, yay!Python 2,
93666261 octetsUne FGITW. Peut probablement être fortement joué au golf. Suggestions bienvenues.
Modifier: 27 octets grâce à Mego. 4 octets grâce à TheBikingViking. 1 octet grâce à user3030010.
Essayez-le en ligne!
la source
PHP,
73726962 octetsPrend la chaîne à imprimer sur le fuselage en tant que premier argument de la ligne de commande lorsque le script est appelé.
Améliorations:
join
.Essayez-le en ligne!
C'était amusant! :-)
Exemples d'appels:
la source
brainfuck , 179 octets
Essayez-le en ligne!
la source
Ruby,
5755 octets-2 octets par @ValueInk
Ancienne version, suppose que la nouvelle ligne est entrée:-5 octets en supposant qu'il n'y a pas de nouvelle ligne dans l'entrée, comme suggéré par @manatwork. Une entrée sans nouvelle ligne peut être fournie par exemple avec
echo -n
, commeecho -n hey | ruby rocket.rb
.Ruby,
6260 octetsla source
.chop
.\\
par\
. (Dans les chaînes entre guillemets simples, les caractères ne sont pas échappés, sauf pour\'
.Haskell, 58 octets
la source
Retina ,
4437 octets7 octets grâce à Martin Ender.
Essayez-le en ligne!
la source
Gelée ,
3736 octetsMême score qu'une entrée existante, maisutilise une nouvelle fonctionnalité amusante:ŒB
la version vectorisée deŒḄ
Bounce. Le rebondissement parcourt une liste à la fin puis en arrière,x[:-1]+x[::-1]
par exemple:bounce("codegolf") == "codegolflogedoc"
.-1 octet grâce à Dennis (utilisez la version vectorisée de bounce)
Comment?
Testez-le sur TryItOnline
la source
ŒB
est l'abréviation deŒḄ€
.Pyke ,
403735 octets(Mis à jour pour fonctionner avec la dernière version)
Essayez-le ici!
la source
V ,
41,39 octetsEssayez-le en ligne!
Notez que pour une raison quelconque, l'interprète en ligne produisait des résultats inattendus, j'ai donc poussé une version de débogage vers l'interpréteur en ligne qui s'exécute beaucoup plus lentement. Il devrait produire les bons résultats maintenant.
Puisque ce programme contient des caractères non imprimables, voici un hexdump:
la source
R, 163 octets
Ungolfed:
Je n'aime pas vraiment le fait que j'ai dû mettre des espaces dans la dernière ligne, mais bon!
la source
PowerShell v2 +,
595551 octetsEssayez-le en ligne!
Abuse la valeur par défaut
Write-Output
en fin d’exécution pour coller une nouvelle ligne entre chaque élément, car ce ne sont que des chaînes littérales sur le pipeline. Le seul bit "difficile" est une boucle passant par chaque élément de l'entrée$args
sous forme de tableau de caractères pour obtenir le corps de la fusée.Utilise les nouvelles lignes littérales, comme l'a souligné ConnorLSW, pour économiser des octets.
-4 plus d'octets grâce à Veskah.
la source
\r
PowerShell, 70 octets
Définissez $ a à entrer.
S'il doit prendre une entrée autre qu'une variable, il peut être connecté:
Exemple:
la source
Mathematica, 50 octets
Fonction anonyme. Prend une liste de caractères en entrée et retourne une chaîne en sortie.
la source
PHP,
10810088 octets-8 octets grâce au chat d'affaires
-12 octets grâce à YetiCGN
assez simple
Ideone
la source
foreach(str_split($a)as$c)
place de l'autre pour la boucle. En outre, vous pouvez mettre le $ c directement dans la chaîne si vous utilisez des guillemets doubles:echo" |$c| ....";
function f($a){echo' |. /_\\',preg_replace('/./',' |$0|',$a),' |_|/___\\ VvV';}
$a
avec$argv[1]
et exécuter à partir de la ligne de commande le rend beaucoup plus court.C #,
106978074 octetsJe n'ai pas le C # 6 pour essayer ce qui précède mais je crois que cela fonctionnera
7 octets sauvés grâce à Kevin Cruijssen
Merci à manatwork de m'avoir dirigé dans la bonne direction pour économiser 17 octets
Économisé 6 octets grâce au lait
la source
using System.Linq;s=>$(" |\n /_\\\n{string.Join("",s.Select(c=>" |"+c+"|\n"))} |_|\n/___\\\n VvV");
( 100 octets )Select
:" |"+c+"|\n"
→c+"|\n |"
avec le déplacement du `|` après après{}
.\n
2 octets. Vous économiserez donc 5 octets supplémentaires en les remplaçant par de nouvelles lignes. Oui, si vous utilisez Visual Studio, les nouvelles lignes auront par défaut une longueur de 2 octets, mais vous pouvez ouvrir le fichier source dans un éditeur hexadécimal (Visual Studio en a un) et supprimer les caractères de retour chariot. La sortie sera toujours la même.C,
131, 121 octetsla source
p=s
dans l'initialisation et à l' aide à l'p
intérieurscanf
:main(){char s[99],*p=s;scanf("%s",p);P(" |\n /_\\\n");while(*p)P(" |%c|\n",*p++);P(" |_|\n/___\\\n VvV\n");}
Gelée,
3837 octetsEssayez-le en ligne!
Même idée qu'avec ma réponse Pyth, mais cela peut probablement être joué au golf.
la source
05AB1E ,
50474337 octetsEssayez-le en ligne!
Sauvegardé 9 octets grâce à Adnan.
la source
IðJ
au début du programme, qui comprend également la base du fuselage.«
plus tôt sans trop de chance. C'est beaucoup mieux cependant.U
et remplacerX
pars
enregistre également un octet :).Kotlin, 68 octets
Assez simple. Utilise une chaîne multiligne et un remplacement de regex. C'est un lambda avec le
(String)->String
type. Tester:la source
Gema, 50 caractères
Échantillon échantillon:
la source
FRAPPER
847014 sauvés grâce à manatwork
Plus de la moitié des octets servent à ajouter le nez et le moteur.
la source
grep
?(cat&&echo _)|sed 's~.~ |&|\n~g;1s~^~ |\n /_\\\n~;$s~$~/___\\\n VvV~'
. En fait, je ne vois aucune raison d'utilisercat
etecho
non plus. Serait plus court transformé ensed
solution pure .GolfScript,
6151 octetsMon premier code golf, j'espère que c'est assez bon.
Explication
Essayez-le en ligne!
la source
Vim,
4139 octetsIci,
<End>
c'est littéralement la touche "Fin".Unprintables donc:
la source
GNU sed ,
544948 bytesCe fut ma première réponse à un défi sur ce site. La solution est simple, principalement l’impression. J’ai donc passé un certain temps à faire en sorte qu’il ne puisse plus être joué au golf.
Essayez-le en ligne!
Un an et demi plus tard, j'ai réécrit le script, utilisé un truc pour faire bonne mesure et je l'ai joué au jeu de moins d'un octet. Maintenant c'est des progrès!
Explication: l'espace de modèle à chaque étape est mentionné pour plus de clarté, étant donné l'exemple d'entrée "GO"
la source
Lua,
83, 92 octetsfunction f(x)return' |\n /_\\\n'..x:gsub('(.)',' |%1|\n')..' |_|\n/___\\\n VvV'end
la source