#include <bits/stdc++.h>

using namespace std;

char field[5010][5];

void add_block(bool const isPortrait, int const len, int const pos) {
  if(isPortrait) {
    for(int i=0; i<len; i++) {
      field[5000+len-1-i][pos] = '*';
    }
  }
  else {
    for(int i=0; i<len; i++) {
      field[5000][pos+i] = '*';
    }
  }
}

void simulate() {
  for(int k=0; k<5005; k++) {
    for(int j=0; j<5; j++) {
      for(int i=0; i<5005; i++) {
	if(field[i][j] == '.' && field[i+1][j] == '*') {
	  field[i][j] = '*';
	  field[i+1][j] = '.';
	}
      }
    }
  }
}

void erase_blocks() {
  for(int i=0; i<5005; i++) {
    bool ok = true;
    for(int j=0; j<5; j++) {
      ok = ok && field[i][j] == '*';
    }
    if(ok) {
      for(int j=0; j<5; j++) {
	field[i][j] = '.';
      }
    }
    else {
      break;
    }
  }
}

int main() {
  
  int N;
  
  while(cin >> N && N) {
    
    fill(field[0], field[0]+5010*5, '.');
    
    for(int i=0; i<N; i++) {
      int d, p, q; cin >> d >> p >> q; d--; q--;
      add_block((bool)d, p, q);
      simulate();
      erase_blocks();
      simulate();
    }
    
    int ans = 0;
    for(int i=0; i<5000; i++) {
      for(int j=0; j<5; j++) {
	ans += field[i][j] == '*';
      }
    }
    
    cout << ans << endl;
  }
  
  return 0;
}