Compare commits

...

6 Commits

Author SHA1 Message Date
Jeff Yates 2d82a8d501 finished solution 2020-12-02 12:44:50 -05:00
Jeff Yates c68003b3bb removed whitesapce 2020-12-02 12:44:42 -05:00
Jeff Yates 747871ee0e added input file 2020-12-02 11:22:22 -05:00
Jeff Yates 9bc63b1830 oops forgot an end 2020-12-02 11:19:54 -05:00
Jeff Yates c72dfaa5e7 initial solution for second challenge 2020-12-02 10:47:05 -05:00
Jeff Yates 39c3269366 cleaned up output 2020-12-02 10:29:36 -05:00
4 changed files with 1044 additions and 1 deletions

View File

@ -5,7 +5,7 @@ numbers = File.readlines('./input')
numbers.each do |num1|
numbers.each do |num2|
sum = num1.to_i + num2.to_i
puts num1 + '+' + num2 + '=' + sum.to_s
puts num1.strip + '+' + num2.strip + '=' + sum.to_s
if sum == 2020
puts num1.to_i * num2.to_i
exit

17
day01/solution2.rb Executable file
View File

@ -0,0 +1,17 @@
#!/bin/env ruby
#Find the three entries that sum to 2020; what do you get if you multiply them together?
numbers = File.readlines('./input')
numbers.map! { |s| s.to_i}
numbers.each do |num1|
numbers.each do |num2|
numbers.each do |num3|
sum = num1 + num2 + num3
puts num1.to_s + '+' + num2.to_s + '+' + num3.to_s + '=' + sum.to_s
if sum == 2020
puts num1 * num2 * num3
exit
end
end
end
end

1000
day02/input Normal file

File diff suppressed because it is too large Load Diff

26
day02/solution1.rb Executable file
View File

@ -0,0 +1,26 @@
#!/bin/env ruby
def parse_line (line)
ret = Hash.new
ret[:pass] = line.split(':')[1].strip
ret[:char] = line.split(' ')[1][0]
ret[:min] = line.split(' ')[0].split('-')[0].to_i
ret[:max] = line.split(' ')[0].split('-')[1].to_i
return ret
end
results = {
:pass => 0,
:fail => 0
}
File.readlines('./input').each do |line|
password = parse_line(line)
count = password[:pass].count(password[:char])
if count <= password[:max] && count >= password[:min]
results[:pass] += 1
else
results[:fail] += 1
end
end
pp results