2009年广东省大学生程序设计竞赛 J
// 没看懂,队友说水,写写过了、、
// 他的代码==
#include<cstdio>
#include<cstring>
#include<algorithm>
#include<vector>
#include<iostream>
#include<queue>
#include<stack>
#include<map>
#include<cmath>
#include<bitset>
#define BUG printf("hehe\n")
#define INF 0x3f3f3f3f
#define ll __int64
#define lowbit(x) x&-x
using namespace std;
#pragma comment(linker, "/STACK:102400000,102400000")
struct Mem
{
int t,d;
char name[30];
}mem[10010];
int n;
bool cmp(Mem A,Mem B)
{
return A.t<B.t||(A.t==B.t&&(strcmp(A.name,B.name)<0));
}
int main()
{
int _;
cin>>_;
int sum;
while(_--) {
scanf("%d",&n);
for(int i=1;i<=n;++i)
scanf("%d%s%d",&mem[i].t,mem[i].name,&mem[i].d);
sort(mem+1,mem+1+n,cmp);
sum=0;
for(int i=1;i<=n;++i) {
//sum+=mem[i].t;
if(mem[i].t>sum) sum=mem[i].t;
printf("%s went out at %d\n",mem[i].name,sum);
sum+=mem[i].d;
}
puts("");
}
}