about summary refs log tree commit diff
path: root/day09.rb
blob: eba5d581f593a65ffebd04697242e9a02f43d5d1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
s = File.read("day09").chomp

o = ""
while s =~ /\((\d+)x(\d+)\)/
  o << $`
  a, b = $1.to_i, $2.to_i
  o << $'[0,a]*b
  s = $'[a..-1]
end
o << s
p o.size

s = File.read("day09")

def len(s)
  o = 0
  while s =~ /\((\d+)x(\d+)\)/
    o += $`.size
    r = $'
    a, b = $1.to_i, $2.to_i
    o += len(r[0,a])*b
    s = r[a..-1]
  end
  o += s.size
  o
end

p len(File.read("day09").chomp)