n = gets.to_i f = [[Rational(1, 1)], [Rational(1, 1)], [Rational(1, 1)]] n.times do p, a, b = gets.split.map(&:to_i) f[p] << Rational(a, a + b) end f[1].sort! f[2].sort! ans = 0 f[0].length.times do |i| k0 = f[2].length k1 = f[2].length k2 = f[2].length while k0 > 0 && f[0][i] + f[2][k0 - 1] >= 1 k0 -= 1 end f[1].length.times do |j| while k1 > 0 && f[1][j] + f[2][k1 - 1] >= 1 k1 -= 1 end while k2 > 0 && f[0][i] + f[1][j] + f[2][k2 - 1] >= 2 k2 -= 1 end if f[0][i] + f[1][j] < 1 next end if k2 < f[2].length && f[0][i] + f[1][j] + f[2][k2] == 2 ans -= 1 end ans += f[2].length - [k0, k1].max end end puts(ans)