2015-23
This commit is contained in:
parent
1f0c8ef911
commit
b34285bcf9
40
2015/23/1.pl
Normal file
40
2015/23/1.pl
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
use 5.20.0;
|
||||||
|
|
||||||
|
my @code = <>;
|
||||||
|
|
||||||
|
my $i = 0;
|
||||||
|
|
||||||
|
my %t;
|
||||||
|
while( $i < @code ) {
|
||||||
|
warn join ' ', $i, $t{a}, $t{b}, $code[$i];
|
||||||
|
# my $dummy = <>;
|
||||||
|
if( $code[$i] =~ /inc (.)/ ) {
|
||||||
|
$t{$1}++;
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
elsif( $code[$i] =~ /tpl (.)/ ) {
|
||||||
|
$t{$1} *= 3;
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
elsif( $code[$i] =~ /hlf (.)/ ) {
|
||||||
|
$t{$1} /= 2;
|
||||||
|
warn $t{$1};
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
elsif( $code[$i] =~ /jmp ([+-]\d+)/ ) {
|
||||||
|
$i+=$1;
|
||||||
|
}
|
||||||
|
elsif( $code[$i] =~ /jie (.), ([+-]\d+)/ ) {
|
||||||
|
$i+= ($t{$1} % 2) ? 1 : $2;
|
||||||
|
}
|
||||||
|
elsif( $code[$i] =~ /jio (.), ([+-]\d+)/ ) {
|
||||||
|
$i+= ($t{$1} != 1) ? 1 : $2;
|
||||||
|
warn $i;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
use DDP;
|
||||||
|
p %t;
|
||||||
|
|
||||||
|
|
40
2015/23/2.pl
Normal file
40
2015/23/2.pl
Normal file
@ -0,0 +1,40 @@
|
|||||||
|
use 5.20.0;
|
||||||
|
|
||||||
|
my @code = <>;
|
||||||
|
|
||||||
|
my $i = 0;
|
||||||
|
|
||||||
|
my %t = ( a => 1 );
|
||||||
|
while( $i < @code ) {
|
||||||
|
warn join ' ', $i, $t{a}, $t{b}, $code[$i];
|
||||||
|
# my $dummy = <>;
|
||||||
|
if( $code[$i] =~ /inc (.)/ ) {
|
||||||
|
$t{$1}++;
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
elsif( $code[$i] =~ /tpl (.)/ ) {
|
||||||
|
$t{$1} *= 3;
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
elsif( $code[$i] =~ /hlf (.)/ ) {
|
||||||
|
$t{$1} /= 2;
|
||||||
|
warn $t{$1};
|
||||||
|
$i++;
|
||||||
|
}
|
||||||
|
elsif( $code[$i] =~ /jmp ([+-]\d+)/ ) {
|
||||||
|
$i+=$1;
|
||||||
|
}
|
||||||
|
elsif( $code[$i] =~ /jie (.), ([+-]\d+)/ ) {
|
||||||
|
$i+= ($t{$1} % 2) ? 1 : $2;
|
||||||
|
}
|
||||||
|
elsif( $code[$i] =~ /jio (.), ([+-]\d+)/ ) {
|
||||||
|
$i+= ($t{$1} != 1) ? 1 : $2;
|
||||||
|
warn $i;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
use DDP;
|
||||||
|
p %t;
|
||||||
|
|
||||||
|
|
49
2015/23/input.txt
Normal file
49
2015/23/input.txt
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
jio a, +19
|
||||||
|
inc a
|
||||||
|
tpl a
|
||||||
|
inc a
|
||||||
|
tpl a
|
||||||
|
inc a
|
||||||
|
tpl a
|
||||||
|
tpl a
|
||||||
|
inc a
|
||||||
|
inc a
|
||||||
|
tpl a
|
||||||
|
tpl a
|
||||||
|
inc a
|
||||||
|
inc a
|
||||||
|
tpl a
|
||||||
|
inc a
|
||||||
|
inc a
|
||||||
|
tpl a
|
||||||
|
jmp +23
|
||||||
|
tpl a
|
||||||
|
tpl a
|
||||||
|
inc a
|
||||||
|
inc a
|
||||||
|
tpl a
|
||||||
|
inc a
|
||||||
|
inc a
|
||||||
|
tpl a
|
||||||
|
inc a
|
||||||
|
tpl a
|
||||||
|
inc a
|
||||||
|
tpl a
|
||||||
|
inc a
|
||||||
|
tpl a
|
||||||
|
inc a
|
||||||
|
inc a
|
||||||
|
tpl a
|
||||||
|
inc a
|
||||||
|
inc a
|
||||||
|
tpl a
|
||||||
|
tpl a
|
||||||
|
inc a
|
||||||
|
jio a, +8
|
||||||
|
inc b
|
||||||
|
jie a, +4
|
||||||
|
tpl a
|
||||||
|
inc a
|
||||||
|
jmp +2
|
||||||
|
hlf a
|
||||||
|
jmp -7
|
Loading…
Reference in New Issue
Block a user