#include <algorithm>
#include <cmath>
#include <cstdio>
#include <iostream>
#include <string>
#include <queue>
#define MAX 200
using namespace std;

int main(void){
	int i,j,k,n,ans;
	bool f[5][MAX];
	while(1){
		cin >> n;
		if(n == 0) break;
		for(i=0;i<5;i++){
			for(j=0;j<MAX;j++) f[i][j] = false;
		}
		ans = 0;
		for(i=0;i<n;i++){
			int d,p,q;
			cin >> d >> p >> q;
			q--;
			ans += p;
			if(d == 2){
				for(j=MAX-1;j>=0;j--){
					if(j == 0 || f[q][j-1] == true){
						for(k=j;k<j+p;k++) f[q][k] = true;
						break;
					}
				}
			}
			else{
				for(j=MAX-1;j>=0;j--){
					k=5;
					if(j != 0){
						for(k=q;k<q+p;k++) if(f[k][j-1] == true) break;
					}
					if(j == 0 || k != q+p){
						for(k=q;k<q+p;k++) f[k][j] = true;
						break;
					}
				}
			}
			for(j=0;j<MAX;j++){
				for(k=0;k<5;k++) if(f[k][j] == false) break;
				if(k == 5){
					ans -= 5;
					for(k=0;k<5;k++){
						for(int t=j;t<MAX-1;t++) f[k][t] = f[k][t+1];
						f[k][MAX-1] = false;
					}
					j--;
				}
			}
		//			cout << endl;
		//		for(int ii=7;ii>=0;ii--){
		//	for(j=0;j<5;j++) cout << f[j][ii] << " ";
		//	cout << endl;
		//}
		//cout << endl;
		}
		cout << ans << endl;


	}
	return 0;
}