Jumblers vs Rebuilders: Codierung mit Tetris Bricks - Bereich für Rebuilder-Antworten

10

Dies ist die Begleitfrage zu Jumblers vs Rebuilders: Codierung mit Tetris Bricks, bei der Rebuilder ihre Lösungen veröffentlichen können.

Wie in Wo sollen wir Räuber unterbringen? Dies ermöglicht Räubern mehr Formatierungsfreiheit und ermöglicht ihnen, Wiederholungen zu erzielen.

Beantworten Sie diese Frage nur, wenn Sie eine noch nicht geknackte Antwort auf Jumblers vs Rebuilders: Coding with Tetris Bricks geknackt haben . Bitte fügen Sie Ihrer Antwort einen Link zu dieser Antwort und einen Kommentar zu dieser Antwort hinzu, der auf Ihre Antwort verweist.

Die akzeptierte Antwort auf diese Frage ist der Gewinner des Wiederaufbaus.

Die Anzeigetafel wird nur in der anderen Frage angezeigt .

COTO hat großzügig eine JSFiddle für die einfache Bearbeitung von Code-Bausteinen erstellt. Ich habe diese Geige aktualisiert, sodass ES 6 nicht erforderlich ist, und sie für dieses Stapel-Snippet minimiert:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script><script>function parseSpec(s){function first(){var e,t;t=S.findIndex(function(t){return(e=t.findIndex(function(e){return/\S/.test(e)}))!=-1});return t==-1?null:[e,t]}function at(e){var t=e[0],n=e[1];return n>=0&&n<S.length&&t>=0&&t<S[n].length?S[n][t]:" "}function wipe(e){var t=e[0],n=e[1];if(n>=0&&n<S.length&&t>=0&&t<S[n].length)S[n][t]=" "}var P,S=s.split("\n").map(function(e){return e.split("")});var oPats=$(".proto-tet [pat]").get().map(function(e){return{sPat:eval("["+$(e).attr("pat")+"]"),e:e,block:function(e){return[at(e)].concat(this.sPat.map(function(t){return at([e[0]+t[0],e[1]+t[1]])}))},wipe:function(e){this.sPat.forEach(function(e){return wipe([P[0]+e[0],P[1]+e[1]])})},match:function(e){return!/\s/.test(this.block(e).join(""))}}});window.oPats=oPats;while(P=first()){var oPat=oPats.find(function(e){return e.match(P)});if(!oPat){orphan(at(P));wipe(P);continue}createPiece(oPat.e,oPat.block(P));wipe(P);oPat.wipe(P)}}function createPiece(e,t){function r(e){var t=$(this).position();G.isIgnoreClick=false;G.eDrag=this;G.iOffsets=[e.clientX-t.left,e.clientY-t.top]}function i(){if(G.isIgnoreClick)return;var e=$(this);s($(".proto-tet ."+e.attr("rr")),function(e,t){return n[t-1]},e.css("left"),e.css("top"));e.remove()}function s(e,t,n,s){e.clone().html(e.html().replace(/@(\d)(\d)/g,t)).appendTo("body").on("mousedown",r).click(i).css({left:n,top:s})}var n=[];s($(e),function(e,r,i){return n[r-1]=t[i-1]},18+G.iSpawn%8*18*4+"px",18+~~(G.iSpawn/8)*18*4+"px");G.iSpawn++}function init(){$(document).on("mouseup",function(){return G.eDrag=null}).on("mousemove",function(e){if(G.eDrag){var t=$(G.eDrag),n=Math.round((e.clientX-G.iOffsets[0])/18)*18,r=Math.round((e.clientY-G.iOffsets[1])/18)*18,i=t.position();if(n!=i.left||r!=i.top)G.isIgnoreClick=true;t.css({left:n+"px",top:r+"px"})}})}function orphan(e){error("Spec character not a part of any block: '"+e+"'")}function error(e){$(".error").css("display","block").append("<div>"+e+"</div>")}function go(){$(init);$(function(){parseSpec($("#spec").val())});$("#spec").remove();$("#info").remove();$("#go").remove()}var G={eDrag:null,isIgnoreClick:true,iSpawn:0};Array.prototype.findIndex=function(e){for(var t=0;t<this.length;t++){if(e(this[t]))return t}return-1};Array.prototype.find=function(e){var t=this.findIndex(e);if(t==-1)return;else return this[t]}</script><style>.proto-tet, .spec{display: none;}.tet-I{color: darkgreen;}.tet-J{color: orangered;}.tet-L{color: navy;}.tet-T{color: darkred;}.tet-O{color: darkcyan;}.tet-S{color: darkviolet;}.tet-Z{color: darkorange;}body > .tet{position: absolute;cursor: move;-webkit-touch-callout: none;-webkit-user-select: none;-khtml-user-select: none;-moz-user-select: none;-ms-user-select: none;user-select: none;border-collapse: collapse;}.tet td{width: 18px;height: 18px;font: bold 14px "Courier New",monospace;text-align: center;vertical-align: middle;padding: 0;}.error{z-index: 1024;position: absolute;display: none;color: red;font-weight: bold;background-color: white;}textarea{font-family: "Courier New", Courier, monospace;}</style><div id='info'>Put code-bricks here and hit OK. Re-run the snippet to restart.<br>(You may need to replace spaces in code-bricks with some other character first.)</div><textarea id='spec' rows='16' cols='80'>ABCD&nbsp;&nbsp;a&#13;&#10;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;b&nbsp;&nbsp;&nbsp;Oo&#13;&#10;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;c&nbsp;&nbsp;&nbsp;oo&#13;&#10;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;d&#13;&#10;&#13;&#10;&nbsp;E&nbsp;&nbsp;&nbsp;&nbsp;h&#13;&#10;&nbsp;F&nbsp;&nbsp;efg&nbsp;&nbsp;&nbsp;hg&nbsp;&nbsp;&nbsp;GFE&#13;&#10;&nbsp;GH&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;f&nbsp;&nbsp;&nbsp;H&#13;&#10;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;e&#13;&#10;&#13;&#10;&nbsp;I&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;IJK&#13;&#10;&nbsp;J&nbsp;&nbsp;&nbsp;l&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;L&#13;&#10;LK&nbsp;&nbsp;&nbsp;kji&nbsp;&nbsp;kl&#13;&#10;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;j&#13;&#10;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;i&#13;&#10;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;t&#13;&#10;&nbsp;OP&nbsp;&nbsp;&nbsp;p&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;QR&nbsp;&nbsp;&nbsp;&nbsp;rs&#13;&#10;MN&nbsp;&nbsp;&nbsp;&nbsp;on&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;ST&nbsp;&nbsp;&nbsp;q&#13;&#10;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;m&#13;&#10;&nbsp;W&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;z&#13;&#10;&nbsp;XY&nbsp;&nbsp;&nbsp;&nbsp;zxw&nbsp;&nbsp;&nbsp;&nbsp;yx&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Y&#13;&#10;&nbsp;Z&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;y&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;w&nbsp;&nbsp;&nbsp;&nbsp;WXZ</textarea><br><button id='go' type='button' onclick='go()'>OK</button><div class="proto-tet"><table class="tet tet-I tet-I0" rr="tet-I1" pat="[1,0],[2,0],[3,0]"><tr><td>@11</td><td>@22</td><td>@33</td><td>@44</td></tr></table><table class="tet tet-I tet-I1" rr="tet-I2" pat="[0,1],[0,2],[0,3]"><tr><td>@11</td></tr><tr><td>@22</td></tr><tr><td>@33</td></tr><tr><td>@44</td></tr></table><table class="tet tet-I tet-I2" rr="tet-I3" ><tr><td>@40</td><td>@30</td><td>@20</td><td>@10</td></tr></table><table class="tet tet-I tet-I3" rr="tet-I0"><tr><td>@40</td></tr><tr><td>@30</td></tr><tr><td>@20</td></tr><tr><td>@10</td></tr></table><table class="tet tet-J tet-J0" rr="tet-J1" pat="[0,1],[-1,2],[0,2]"><tr><td></td><td>@11</td></tr><tr><td></td><td>@22</td></tr><tr><td>@33</td><td>@44</td></tr></table><table class="tet tet-J tet-J1" rr="tet-J2" pat="[0,1],[1,1],[2,1]"><tr><td>@31</td><td></td><td></td></tr><tr><td>@42</td><td>@23</td><td>@14</td></tr></table><table class="tet tet-J tet-J2" rr="tet-J3" pat="[1,0],[0,1],[0,2]"><tr><td>@41</td><td>@32</td></tr><tr><td>@23</td><td></td></tr><tr><td>@14</td><td></td></tr></table><table class="tet tet-J tet-J3" rr="tet-J0" pat="[1,0],[2,0],[2,1]"><tr><td>@11</td><td>@22</td><td>@43</td></tr><tr><td></td><td></td><td>@34</td></tr></table><table class="tet tet-O tet-O0" rr="tet-O1" pat="[1,0],[0,1],[1,1]"><tr><td>@11</td><td>@22</td></tr><tr><td>@33</td><td>@44</td></tr></table><table class="tet tet-O tet-O1" rr="tet-O2"><tr><td>@30</td><td>@10</td></tr><tr><td>@40</td><td>@20</td></tr></table><table class="tet tet-O tet-O2" rr="tet-O3"><tr><td>@40</td><td>@30</td></tr><tr><td>@20</td><td>@10</td></tr></table><table class="tet tet-O tet-O3" rr="tet-O0"><tr><td>@20</td><td>@40</td></tr><tr><td>@10</td><td>@30</td></tr></table><table class="tet tet-L tet-L0" rr="tet-L1" pat="[0,1],[0,2],[1,2]"><tr><td>@11</td><td></td></tr><tr><td>@22</td><td></td></tr><tr><td>@33</td><td>@44</td></tr></table><table class="tet tet-L tet-L1" rr="tet-L2" pat="[1,0],[2,0],[0,1]"><tr><td>@31</td><td>@22</td><td>@13</td></tr><tr><td>@44</td><td></td><td></td></tr></table><table class="tet tet-L tet-L2" rr="tet-L3" pat="[1,0],[1,1],[1,2]"><tr><td>@41</td><td>@32</td></tr><tr><td></td><td>@23</td></tr><tr><td></td><td>@14</td></tr></table><table class="tet tet-L tet-L3" rr="tet-L0" pat="[-2,1],[-1,1],[0,1]"><tr><td></td><td></td><td>@41</td></tr><tr><td>@12</td><td>@23</td><td>@34</td></tr></table><table class="tet tet-S tet-S0" rr="tet-S1" pat="[1,0],[-1,1],[0,1]"><tr><td></td><td>@21</td><td>@12</td></tr><tr><td>@43</td><td>@34</td><td></td></tr></table><table class="tet tet-S tet-S1" rr="tet-S2" pat="[0,1],[1,1],[1,2]"><tr><td>@41</td><td></td></tr><tr><td>@32</td><td>@23</td></tr><tr><td></td><td>@14</td></tr></table><table class="tet tet-S tet-S2" rr="tet-S3"><tr><td></td><td>@30</td><td>@40</td></tr><tr><td>@10</td><td>@20</td><td></td></tr></table><table class="tet tet-S tet-S3" rr="tet-S0"><tr><td>@10</td><td></td></tr><tr><td>@20</td><td>@30</td></tr><tr><td></td><td>@40</td></tr></table><table class="tet tet-Z tet-Z0" rr="tet-Z1" pat="[1,0],[1,1],[2,1]"><tr><td>@11</td><td>@22</td><td></td></tr><tr><td></td><td>@33</td><td>@44</td></tr></table><table class="tet tet-Z tet-Z1" rr="tet-Z2" pat="[-1,1],[0,1],[-1,2]"><tr><td></td><td>@11</td></tr><tr><td>@32</td><td>@23</td></tr><tr><td>@44</td><td></td></tr></table><table class="tet tet-Z tet-Z2" rr="tet-Z3"><tr><td>@40</td><td>@30</td><td></td></tr><tr><td></td><td>@20</td><td>@10</td></tr></table><table class="tet tet-Z tet-Z3" rr="tet-Z0"><tr><td></td><td>@40</td></tr><tr><td>@20</td><td>@30</td></tr><tr><td>@10</td><td></td></tr></table><table class="tet tet-T tet-T0" rr="tet-T1" pat="[1,0],[2,0],[1,1]"><tr><td>@11</td><td>@22</td><td>@33</td></tr><tr><td></td><td>@44</td><td></td></tr></table><table class="tet tet-T tet-T1" rr="tet-T2" pat="[-1,1],[0,1],[0,2]"><tr><td></td><td>@11</td></tr><tr><td>@42</td><td>@23</td></tr><tr><td></td><td>@34</td></tr></table><table class="tet tet-T tet-T2" rr="tet-T3" pat="[-1,1],[0,1],[1,1]"><tr><td></td><td>@41</td><td></td></tr><tr><td>@32</td><td>@23</td><td>@14</td></tr></table><table class="tet tet-T tet-T3" rr="tet-T0" pat="[0,1],[1,1],[0,2]"><tr><td>@31</td><td></td></tr><tr><td>@22</td><td>@43</td></tr><tr><td>@14</td><td></td></tr></table></div><div class="error"></div>

Calvins Hobbys
quelle

Antworten:

9

Crack of Xnors 340-Area-Antwort

Kein kryptografisches Hokuspokus für mich.

Code:

10000001111111222
22388892357889356
69968999352143221
80867227952780811
a=23333333444444
b=71122368066667
c=47948316823798
d=79254432699451 
496857235742     
579159386011     
606961806231     
pow(a,b,c)-d     
62656269644465648
67766884711672530
73487440752777431
print('Tetris'*(1
))               
7873806482918808 
8843930593249458 
946095869869     

Zuordnung von Blöcken zu Zeilennummern

    #Four spaces 9-12
    #Four spaces 9-12
    #Four spaces 9-12
    #Four spaces 9-12
    #Four spaces 17
    #Four spaces 17
    #Four spaces 17
    #Four spaces 17-20
    #Four spaces 5-8
))  #Two spaces 17
0290 1-4
0398 1-4
0866 1-4
0887 1-4
0892 1-4
0992 1-4
1108 13-16
1268 1-4
1297 1-4
1339 1-4
1555 1-4
1722 1-4
1817 1-4
1848 1-4
1930 1-4
2328 1-4
2521 1-4
2611 1-4
2747 5-8
3179 5-8
3192 5-8
3245 5-8
3284 5-8
3334 5-8
3613 5-8
3862 5-8
4086 5-8
4629 5-8
4639 5-8
4674 5-8
4695 5-8
4781 5-8
4968 9
5723 9
5742 9
5791 10
5938 10
6011 10
6069 11
6180 11 
6231 11
6265 13
6269 13
6444 13
6564 13
6776 14
6884 14 
7116 14
7253 14
7348 15
7440 15 
7527 15
7743 15
7873 17
8064 17 
8291 17
8808 17
8843 18
9305 18
9324 18
9458 18
9460 19
9586 19
9869 19
==== 5-8
a,b, 12
abcd 5-8
c)-d 12
etri 16
pow( 12
prin 16
s'*( 16
t('T 16
four spaces  9-12
four spaces  20
Feersum
quelle
6

Lösung für das 212-Flächen-Puzzle von xnor

print('Tetris'* (3580048039607960824098110131314133014381502228523172479258529553116373838184169‌​435643604632480050165153525653945598563157585840631264256539704571638903974876749‌​009825073297156762481649%38941394))
foobar
quelle
6

Teromino Sandkasten

Obwohl dies ipso facto keine Lösung ist, wollte ich dieses Online-Tool, das ich zusammengestellt habe, mit anderen potenziellen Wiederherstellern teilen. Es ermöglicht eine schnelle und fehlerfreie Manipulation der "Code Tetrominos".

Die Formen werden mithilfe eines einfachen Zeichenrasters im specElement angegeben. Die meisten Antworten sollten ein einfaches Kopieren / Einfügen von PPCG sein. Die Standardformspezifikation enthält zahlreiche Beispiele. Ich habe auch die Formspezifikationen für meine C-72- Antwort beigefügt .

Zwei Vorbehalte:

  1. Die Spezifikationen sind Whitespace-empfindlich
  2. Einige HTML-Steuerzeichen müssen möglicherweise maskiert werden

Die Stücke sind in verschiedenen Farben dargestellt. Ziehen Sie sie, um sie zu verschieben, und klicken Sie darauf, um sie zu drehen. Kinderleicht.

Jeder, der Verbesserungen hinzufügen, neue Spezifikationen hinzufügen, Fehler beheben usw. möchte, kann die Geige loswerden und diese Antwort bearbeiten, um einen aktualisierten Link bereitzustellen.

Viel Spaß beim Wiederaufbau. :) :)

COTO
quelle
Muss ich etwas Seltsames tun, damit das funktioniert? In keinem der drei von mir installierten Browser tut es etwas für mich.
Geobits
@Geobits: Es werden zahlreiche ES6-Funktionen verwendet. Ich verwende es im neuesten FF ohne Probleme. Lassen Sie es mich in Chrome testen.
COTO
1
Ha! Anscheinend aktualisiere / benutze ich Firefox nicht oft. Es war Version 22. Neueste funktioniert gut.
Geobits
Chrome 38 scheint an den Lambda-Ausdrücken zu ersticken. Ich wusste nicht, dass es nicht mit ihnen umgehen konnte. : O IE Ich wusste, dass ich nicht damit umgehen konnte, aber ... wer verwendet IE. : D
COTO
Ich habe die Geige mit Chrome kompatibel gemacht und sie in der Frage in ein Stack-Snippet eingefügt. Ich hoffe es macht dir nichts aus.
Calvins Hobbys
5

Lösung für die 80-Bereich-Antwort von es1024

main(q){char c[]
={'/T','$"e','t'
,0162,'rIi>`:i',
'?#>s',q<q/**/};
return puts(c);}
jimmy23013
quelle
4

Lösung für Gerlis 72-Flächen-Einreichung

FromCharacterCode[
 {8*10+4, 10*10+1,
 100+16, 10*10+14,
 105, 115}]//Print

Es gibt jedoch einen Fehler in der Einreichung. Im dritten TBlock "drehte" Gerli den [und {beim Drehen des Blocks.

Alles von Hand gemacht. Das Printwar ziemlich leicht zu finden. Dann schrieb ich die restlichen Buchstaben aus und stellte fest, dass sie ein Anagramm von waren FromCharacterCode. Dies hat die maximale Codehöhe und die meisten Blöcke stark eingeschränkt. Da es kein @und nur ein Paar Klammern gab, Printwurde das mit der Suffixnotation versehen (die sowohl seine Position als auch das vorangestellte durch das Suffix notierte) //. Am Ende waren nur noch ein Sund zwei Ts übrig. Das Swurde durch das erzwungen Layout und die erste Aufgabe von Ts habe ich versucht funktioniert.

Martin Ender
quelle