#include<bits/stdc++.h>
using namespace std;
bool pd[100001];
int price[100001],Time[100001],t[100001],ans=0;
struct node{
int youhui,timenum,id,beiyongtimenum;
}a[100001];
bool pdf(int n)
{
int flag=0,idn;
for(int i=1;i<=n;i++)
{
if(a[i].youhui)
{
flag=1;
idn=i;
}
}
if(!flag)
{
return 0;
}
else
{
if(a[idn].timenum>45)
{
for(int i=1;i<=n;i++)
{
a[i].youhui=false;
}
return 0;
}
else
{
for(int i=1;i<=n;i++)
{
if(a[i].youhui>price[n])
{
a[i].youhui=false;
return 1;
}
}
return 0;
}
}
}
int main()
{
int n;
memset(t,0,sizeof(t));
memset(Time,0,sizeof(Time));
cin>>n;
int i;
for(i=1;i<=n;i++)
{
cin>>pd[i]>>price[i]>>Time[i];
}
for(i=1;i<=n;i++)
{
a[i].youhui=false;
t[i]=Time[i]-t[i-1];
if(!pd[i])
{
ans+=price[i];
a[i].youhui=price[i];
a[i].id=i;
a[i].beiyongtimenum=Time[i]-Time[i-1];
for(int j=1;j<=i;j++)
{
a[j].timenum=a[i].timenum-a[j].beiyongtimenum;
}
continue;
}
if(pd[i]&&pdf(i))
{
continue;
}
else
{
ans+=price[i];
}
}
cout<<ans<<"\n";
}