#include #include #include #include #include using namespace std; vectort; vector< vector > tt; vector p; int n,h; int bestwin = 0; void search(int top, int win) { if(top bestwin ) { bestwin = win; } } } int main(int argc, const char* argv[]) { int K; vector x,y,x0,y0; double u,v; ifstream inf("hare.in"); inf>>K; for(int i = 0; i < K; ++i) { inf>>n>>h>>u>>v; x.resize(n); y.resize(n); x0.resize(h); y0.resize(h); t.resize(n+h); tt.assign(n+h,vector(n,0)); double tmpx = 0,tmpy = 0,tmpt = 0; for(int j = 0;j < n; ++j) { inf>>x[j]>>y[j]; t[j] = sqrt((x[j]-tmpx)*(x[j]-tmpx)+(y[j]-tmpy)*(y[j]-tmpy))/u+tmpt; tmpx=x[j];tmpy=y[j];tmpt=t[j]; } for(int j = 0;j < h; ++j) t[n+j] = 0; x0[0]=y0[0] = 0; for(int j = 1;j >x0[j]>>y0[j]; for(int j = 0; j < n; ++j) { for(int k = 0; k < n; ++k) { tt[j][k] = sqrt((x[j]-x[k])*(x[j]-x[k])+(y[j]-y[k])*(y[j]-y[k]))/v; } for(int k = 0; k < h; ++k) { tt[n+k][j] = sqrt((x[j]-x0[k])*(x[j]-x0[k])+(y[j]-y0[k])*(y[j]-y0[k]))/v; } } p.resize(h); for(int j = 0; j < h; ++j) p[j] = n+j; bestwin = 0; search(0,0); cout<<"Data Set "<