#include<iostream>
#include<cstring>
#include<string>
#include<cstdio>
#include<queue>
#include<cmath>
#include<algorithm>
using namespace std;
struct node{
int ktime;
int moneyy;
bool yn=true;
}a[1000000];
int at=1;
int n,ntime,money[1000000];
int ans=0;
int kind[1000000];
int timee[1000000];
int main(){
cin >>n;
for(int i=1;i<=n;i++){
cin>>kind[i]>>money[i]>>timee[i];
ans+=money[i];
if(kind[i]==1){
a[at].ktime=timee[i];
a[at].moneyy=money[i];
at++;
}
}
for(int i=1;i<=n;i++){
if(kind[i]==0){
for(int j=1;j<=at;j++){
if(timee[i]-a[j].ktime<=45&&a[j].yn&&money[i]<=a[j].moneyy){
ans-=money[i];
a[j].yn=false;
break;
}
}
}
}
cout <<ans;
return 0;
}