N = gets.to_i cur = 1 edges = [] 1.upto(N - 1) do |u| next if u == 2 (u + 1).upto(N) do |v| edges << [u, v] end end puts edges.size edges.each do |u, v| puts "%d %d" % [u, v] end