#include #include #include using namespace std; struct topic { int tid,num,t0,t,dt,q_num,finished; }; struct member { int pid,k,work_left,last; vectorpidk; inline bool operator <(const member&a) const { if(a.last==last) return a.pid>pid; else return a.last>last; } }; vector topics; vector staff; int m,n,kase,time,need,z,i,j,k,x; int main() { #ifdef local freopen("pro.in","r",stdin); #endif while(scanf("%d",&m)==1&&m) { time=need=z=0; while(m--) { topic a; scanf("%d%d%d%d%d",&a.tid,&a.num,&a.t0,&a.t,&a.dt); a.q_num=a.finished=0; topics.push_back(a); } scanf("%d",&n); while(n--) { z++; member a; a.work_left=a.last=0; scanf("%d%d",&a.pid,&a.k); a.pid=z; for(i=0;i=topics[i].t0 &&topics[i].finished+topics[i].q_num