#!/usr/local/bin/ruby -w
# Author: sholmes
# ex) this.rb more_than looking_list search_targets [...search_targetsN]
class String
def has?(item, min)
has, pos = 0, 0
while index(item, pos)
has += 1
pos += item.length
return true if has >= min
end
false
end
end
MIN = Integer(ARGV.shift)
LOOKING_LIST = File.readlines(ARGV.shift).map!(&:chomp)
ARGF.each do |line|
if LOOKING_LIST.any?{|item|line.has? item, MIN}
puts line
end
end
IyEvdXNyL2xvY2FsL2Jpbi9ydWJ5IC13CgojIEF1dGhvcjogc2hvbG1lcwojIGV4KSB0aGlzLnJiIG1vcmVfdGhhbiBsb29raW5nX2xpc3Qgc2VhcmNoX3RhcmdldHMgWy4uLnNlYXJjaF90YXJnZXRzTl0KCmNsYXNzIFN0cmluZwogIGRlZiBoYXM/KGl0ZW0sIG1pbikKICAgIGhhcywgcG9zID0gMCwgMAoKICAgIHdoaWxlIGluZGV4KGl0ZW0sIHBvcykKICAgICAgaGFzICs9IDEKICAgICAgcG9zICs9IGl0ZW0ubGVuZ3RoCiAgICAgIHJldHVybiB0cnVlIGlmIGhhcyA+PSBtaW4KICAgIGVuZAoKICAgIGZhbHNlCiAgZW5kCmVuZAoKTUlOID0gSW50ZWdlcihBUkdWLnNoaWZ0KQpMT09LSU5HX0xJU1QgPSBGaWxlLnJlYWRsaW5lcyhBUkdWLnNoaWZ0KS5tYXAhKCY6Y2hvbXApCgpBUkdGLmVhY2ggZG8gfGxpbmV8CiAgaWYgTE9PS0lOR19MSVNULmFueT97fGl0ZW18bGluZS5oYXM/IGl0ZW0sIE1JTn0KICAgIHB1dHMgbGluZQogIGVuZAplbmQ=