Browse Source

Day 14 solved

Roman Hergenreder 4 years ago
parent
commit
8dd742e41b
2 changed files with 156 additions and 0 deletions
  1. 35 0
      Day 14/input.pl
  2. 121 0
      Day 14/input_beautified.pl

+ 35 - 0
Day 14/input.pl

@@ -0,0 +1,35 @@
+use Tk;use MIME::Base64;chomp(($a,$a,$b,$c,$f,$u,$z,$y,$r,$r,$u)=<DATA>);sub M{$M=shift;##
+@m=keys %::;(grep{(unpack("%32W*",$_).length($_))eq$M}@m)[0]};$zvYPxUpXMSsw=0x1337C0DE;###
+/_help_me_/;$PMMtQJOcHm8eFQfdsdNAS20=sub{$zvYPxUpXMSsw=($zvYPxUpXMSsw*16807)&0xFFFFFFFF;};
+($a1Ivn0ECw49I5I0oE0='07&3-"11*/(')=~y$!-=$`-~$;($Sk61A7pO='K&:P3&44')=~y$!-=$`-~$;m/Mm/g;
+($sk6i47pO='K&:R&-&"4&')=~y$!-=$`-~$;;;;$d28Vt03MEbdY0=sub{pack('n',$fff[$S9cXJIGB0BWce++]
+^($PMMtQJOcHm8eFQfdsdNAS20->()&0xDEAD));};'42';($vgOjwRk4wIo7_=MainWindow->new)->title($r)
+;($vMnyQdAkfgIIik=$vgOjwRk4wIo7_->Canvas("-$a"=>640,"-$b"=>480,"-$u"=>$f))->pack;@p=(42,42
+);$cqI=$vMnyQdAkfgIIik->createLine(@p,@p,"-$y"=>$c,"-$a"=>3);;;$S9cXJIGB0BWce=0;$_2kY10=0;
+$_8NZQooI5K4b=0;$Sk6lA7p0=0;$MMM__;$_=M(120812).'/'.M(191323).M(133418).M(98813).M(121913)
+.M(134214).M(101213).'/'.M(97312).M(6328).M(2853).'+'.M(4386);s|_||gi;@fff=map{unpack('n',
+$::{M(122413)}->($_))}m:...:g;($T=sub{$vMnyQdAkfgIIik->delete($t);$t=$vMnyQdAkfgIIik->#FOO
+createText($PMMtQJOcHm8eFQfdsdNAS20->()%600+20,$PMMtQJOcHm8eFQfdsdNAS20->()%440+20,#Perl!!
+"-text"=>$d28Vt03MEbdY0->(),"-$y"=>$z);})->();$HACK;$i=$vMnyQdAkfgIIik->repeat(25,sub{$_=(
+$_8NZQooI5K4b+=0.1*$Sk6lA7p0);;$p[0]+=3.0*cos;$p[1]-=3*sin;;($p[0]>1&&$p[1]>1&&$p[0]<639&&
+$p[1]<479)||$i->cancel();00;$q=($vMnyQdAkfgIIik->find($a1Ivn0ECw49I5I0oE0,$p[0]-1,$p[1]-1,
+$p[0]+1,$p[1]+1)||[])->[0];$q==$t&&$T->();$vMnyQdAkfgIIik->insert($cqI,'end',\@p);($q==###
+$cqI||$S9cXJIGB0BWce>44)&&$i->cancel();});$KE=5;$vgOjwRk4wIo7_->bind("<$Sk61A7pO-n>"=>sub{
+$Sk6lA7p0=1;});$vgOjwRk4wIo7_->bind("<$Sk61A7pO-m>"=>sub{$Sk6lA7p0=-1;});$vgOjwRk4wIo7_#%"
+->bind("<$sk6i47pO-n>"=>sub{$Sk6lA7p0=0 if$Sk6lA7p0>0;});$vgOjwRk4wIo7_->bind("<$sk6i47pO"
+."-m>"=>sub{$Sk6lA7p0=0 if $Sk6lA7p0<0;});$::{M(7998)}->();$M_decrypt=sub{'HACKVENT2019'};
+__DATA__
+The cake is a lie!
+width
+height
+orange
+black
+green
+cyan
+fill
+Only perl can parse Perl!
+Achtung das Flag! --> Use N and M
+background
+M'); DROP TABLE flags; --
+Run me in Perl!
+__DATA__

+ 121 - 0
Day 14/input_beautified.pl

@@ -0,0 +1,121 @@
+use Tk;
+use MIME::Base64;
+chomp( ( $a, $a, $b, $c, $f, $u, $z, $y, $r, $r, $u ) = <DATA> );
+
+sub M {
+    $M = shift;      ##
+    @m = keys %::;
+    ( grep { ( unpack( "%32W*", $_ ) . length($_) ) eq $M } @m )[0];
+}
+$zvYPxUpXMSsw = 0x1337C0DE;    ###
+/_help_me_/;
+$PMMtQJOcHm8eFQfdsdNAS20 =
+  sub { $zvYPxUpXMSsw = ( $zvYPxUpXMSsw * 16807 ) & 0xFFFFFFFF; };
+( $a1Ivn0ECw49I5I0oE0 = '07&3-"11*/(' ) =~ y$!-=$`-~$;
+( $Sk61A7pO           = 'K&:P3&44' )    =~ y$!-=$`-~$;
+m/Mm/g;
+( $sk6i47pO = 'K&:R&-&"4&' ) =~ y$!-=$`-~$;
+$d28Vt03MEbdY0 = sub {
+    pack( 'n',
+        $fff[ $S9cXJIGB0BWce++ ] ^ ( $PMMtQJOcHm8eFQfdsdNAS20->() & 0xDEAD ) );
+};
+'42';
+( $vgOjwRk4wIo7_ = MainWindow->new )->title($r);
+( $vMnyQdAkfgIIik =
+      $vgOjwRk4wIo7_->Canvas( "-$a" => 640, "-$b" => 480, "-$u" => $f ) )->pack;
+@p             = ( 10, 10 );
+$cqI           = $vMnyQdAkfgIIik->createLine( @p, @p, "-$y" => $c, "-$a" => 3 );
+$S9cXJIGB0BWce = 0;
+$_2kY10        = 0;
+$_8NZQooI5K4b  = 0;
+$Sk6lA7p0      = 0;
+$MMM__;
+$_ =
+    M(120812) . '/'
+  . M(191323)
+  . M(133418)
+  . M(98813)
+  . M(121913)
+  . M(134214)
+  . M(101213) . '/'
+  . M(97312)
+  . M(6328)
+  . M(2853) . '+'
+  . M(4386);
+s|_||gi;
+
+@fff = map { unpack( 'n', $::{ M(122413) }->($_) ) } m:...:g;
+(
+    $T = sub {
+        $vMnyQdAkfgIIik->delete($t);
+        $t = $vMnyQdAkfgIIik->    #FOO
+          createText(
+          # 0,0,
+            # 10,
+            # 20 + $z
+            $PMMtQJOcHm8eFQfdsdNAS20->() % 600 + 20,
+            $PMMtQJOcHm8eFQfdsdNAS20->() % 440 + 20,    #Perl!!
+            "-text" => "TEST", #$d28Vt03MEbdY0->(),
+            "-$y"   => $z
+          );
+
+          print $d28Vt03MEbdY0->();
+    }
+)->();
+$HACK;
+$i = $vMnyQdAkfgIIik->repeat(
+    25,
+    sub {
+        $_ = ( $_8NZQooI5K4b += 0.1 * $Sk6lA7p0 );
+        $p[0] += 2.0 * cos;
+        $p[1] -= 2 * sin;
+        ( $p[0] > 1 && $p[1] > 1 && $p[0] < 639 && $p[1] < 479 );
+          #|| $i->cancel();
+        00;
+        $q = (
+            $vMnyQdAkfgIIik->find(
+                $a1Ivn0ECw49I5I0oE0,
+                $p[0] - 1,
+                $p[1] - 1,
+                $p[0] + 1,
+                $p[1] + 1
+              )
+              || []
+        )->[0];
+        $q == $T->();
+        $vMnyQdAkfgIIik->insert( $cqI, 'end', \@p );
+        # print $cqI;
+        (
+            $q ==    ###
+              $cqI || $S9cXJIGB0BWce > 44
+        ); # && $i->cancel();
+    }
+);
+$KE = 5;
+$vgOjwRk4wIo7_->bind(
+    "<$Sk61A7pO-n>" => sub {
+        $Sk6lA7p0 = 1;
+    }
+);
+$vgOjwRk4wIo7_->bind( "<$Sk61A7pO-m>" => sub { $Sk6lA7p0 = -1; } );
+$vgOjwRk4wIo7_       #%"
+  ->bind( "<$sk6i47pO-n>" => sub { $Sk6lA7p0 = 0 if $Sk6lA7p0 > 0; } );
+$vgOjwRk4wIo7_->bind(
+    "<$sk6i47pO" . "-m>" => sub { $Sk6lA7p0 = 0 if $Sk6lA7p0 < 0; } );
+$::{ M(7998) }->();
+$M_decrypt = sub { 'HACKVENT2019' };
+__DATA__
+The cake is a lie!
+width
+height
+orange
+black
+green
+cyan
+fill
+Only perl can parse Perl!
+Achtung das Flag! --> Use N and M
+background
+M'); DROP TABLE flags; --
+Run me in Perl!
+__DATA__