]> www.fi.muni.cz Git - aoc.git/blob - 2016/43.pl
Day 25: examining the input
[aoc.git] / 2016 / 43.pl
1 #!/usr/bin/perl -w
2
3 use strict;
4 use v5.30;
5
6 $_ = <>; # header
7 $_ = <>; # header
8 $; = ',';
9
10 my (%size, %used);
11 while (<>) {
12         my ($x, $y, $size, $used) = m|/dev/grid/node-x(\d+)-y(\d+)\s+(\d+)T\s+(\d+)T|;
13         die "no match at $_" if !defined $used;
14         $size{$x,$y} = $size;
15         $used{$x,$y} = $used;
16 }
17
18 my $count = 0;
19 for my $n1 (keys %size) {
20 for my $n2 (keys %size) {
21         next if $n1 eq $n2;
22         next if !$used{$n1};
23         $count++ if $used{$n1} <= $size{$n2} - $used{$n2};
24 } }
25 say $count;
26