n = gets.chomp.to_i boxes = [] for i in 0...n a = gets.chomp.split.map(&:to_i) boxes.push a end boxes.sort!{|a,b| a[0]*a[1]*a[2] <=> b[0]*b[1]*b[2]} dp = [] for i in 0...n dp[i] = -1 end ans = 0 def wide(a,b) return true if a[0] mx mx = dp[j] end end end dp[n-1-i] = mx+1 if dp[n-1-i] > ans ans = dp[n-1-i] end end puts ans