N, M = gets.split.map(&:to_i) Q = M.times.map { gets.split.map(&:to_i) }.sort_by { |s, t| t } ans = N last = -1 Q.each do |s, t| next if (s..t).cover?(last) last = t ans -= 1 end puts ans