#include <iostream>
#include <cstdlib>
#include <stack>
using namespace std;
class k{public:int a,b,c,d;public:void set(int,int,int);void put(k);};
void k::set(int e,int f,int g){a=e;b=f;d=g;c=b*d;}void k::put(k h){c=c-d*(h.a)+h.c;}
int u(const void* a, const void* b){k* p1=(k*)a;k* p2=(k*)b;return p1->c-p2->c;}
int main(){int a,b,c,i,j,n,m;k o,p,t[1000];stack<k> q;stack<k> r[1001];cin>>n;
for(i=0;i<n;i++){cin>>a>>b>>c;p.set(a,b,c);r[a].push(p);}for(i=1;i<=1000;i++){
while(r[i].empty()&&i<=1000)i++;if(i>1000)break;n=0;while(!r[i].empty()){r[i].top();
t[n]=r[i].top();r[i].pop();n++;}qsort(t,n,sizeof(k),u);for(j=0;j<n;j++)r[i].push(t[j]);}
i=1;while(r[i].empty())i++;i++;while(i<=1000){while(r[i].empty()&&i<=1000)i++;if(i>1000)
break;while(!r[i].empty()){p=r[i].top();if(p.b>1){j=p.b-1;while(r[j].empty()&&j>1)j--;
if(!r[j].empty()){o=r[j].top();r[j].pop();p.put(o);}}q.push(p);r[i].pop();}swap(q,r[i]);
i++;}m=0;for(i=1;i<=1000;i++){while(!r[i].empty()){p=r[i].top();m+=p.c;r[i].pop();}}cout<<m;}