# Here your code ! def d2(a,b) 2.times.inject(0) do |s, i| s + (a[i] - b[i]) ** 2 end end n = gets.to_i coins = n.times.map {gets.split.map(&:to_i)} areas = 202.times.map { Array.new(202) } s = coins.inject(0) {|s,c| i,j = c.map {|v| v.div(100) + 1} insec = (i-1..i+1).each.all? { |di| (j-1..j+1).each.all? { |dj| areas[di][dj] ||= [] areas[di][dj].all? {|put| d2(put,c) >= 400} } } if insec areas[i][j].push(c) s+1 else s end } puts s