#include #include #include #include #include using namespace std; const int Ni = 1005; const int inf=1<<27; struct node{ int x,w; bool operator < (const node &a) const { return xa.val) return 1; if(val==a.val&&x>a.x) return 1; return 0; } }; int dp[52][Ni]; int n,m; inline void cInit() { int i,j; for(i=0;i>cs; while(cs--) { scanf("%d%d%d",&n,&m,&x); cInit(); for(j=0;j ql,qr; qnode qn; for(j=0;j=arr[i][j].x) dp[i][j]=min(dp[i][j],qn.val-arr[i][j].x+arr[i][j].w); } } } ans=inf; for(i=0;idp[n-1][i]) ans=dp[n-1][i]; } printf("%d\n",ans); } return 0; }