Skip to content

Instantly share code, notes, and snippets.

View wconrad's full-sized avatar

Wayne Conrad wconrad

View GitHub Profile
@wconrad
wconrad / day11.rb
Created December 12, 2015 12:38
Advent of Code, day 11
#!/usr/bin/env ruby
# http://adventofcode.com/day/11
INPUT = "hepxcrrq"
THREE_LETTER_RUN = Regexp.union(("a".."z").each_cons(3).map(&:join))
ILLEGAL_LETTER = /[iol]/
def unique_pairs(s)
@wconrad
wconrad / day10.rb
Created December 10, 2015 11:50
Advent of Code, day 10
#!/usr/bin/env ruby
# http://adventofcode.com/day/10
INPUT = "1113222113"
def look_and_say(s)
s.gsub(/(.)\1*/) do
"#{$&.size}#{$1}"
end
@wconrad
wconrad / day9.rb
Last active December 9, 2015 12:15
Advent of Code, day 9
#!/usr/bin/env ruby
# http://adventofcode.com/day/9
require "set"
class Map
attr_reader :cities
@wconrad
wconrad / day8.rb
Created December 8, 2015 12:39
Advent of Code, day 8
r/bin/env ruby
# http://adventofcode.com/day/8
class Literal
def initialize(line)
@s = line.chomp
end
@wconrad
wconrad / day7.rb
Last active December 7, 2015 17:28
Advent of code, day 7.
#!/usr/bin/env ruby
# http://adventofcode.com/day/7
class Operation
attr_reader :source
def initialize(source:, inputs:, opcode:, output:)
@source = source
@wconrad
wconrad / day4.rb
Created December 6, 2015 13:57
Advent of code, day 4
#!/usr/bin/env ruby
require "digest/md5"
# http://adventofcode.com/day/4
INPUT = "yzbqklnj"
def find(regex)
loop.with_index do |_, i|
@wconrad
wconrad / day3.rb
Created December 6, 2015 13:46
Advent of Code, day 3
#!/usr/bin/env ruby
# http://adventofcode.com/day/3
require "set"
class Visits
def initialize
@locations = Set.new
@wconrad
wconrad / day1.rb
Created December 6, 2015 13:15
Advent of code, day 1
#!/usr/bin/env ruby
# Advent of code, day 1
# http://adventofcode.com/day/2
input = File.read("input")
floors = Enumerator.new do |yielder|
floor = 0
input.chars.each do |c|
floor += case c
@wconrad
wconrad / day2.rb
Last active December 6, 2015 12:51
Advent of code, day 2
#!/usr/bin/env ruby
# Advent of code, day 2
# http://adventofcode.com/day/2
class Box
def self.from_input(line)
dims = line.split("x").map do |s|
Integer(s)
@wconrad
wconrad / fails.rb
Last active December 1, 2015 19:06
Reproduce "ActiveRecord::Base doesn't belong in a hierarchy descending from ActiveRecord" exception
gem "activerecord", "4.2.5"
# Given that I am using the sqlserver adapter
gem "activerecord-sqlserver-adapter", "~> 4.2.5"
require "active_record"
# And the model is defined before establishing a connection
class DataStagePropertyAttributes < ActiveRecord::Base
self.table_name = "foo"