1 #include<cstdio> 2 #include<cstring> 3 #include<algorithm> 4 using namespace std; 5 const int INF=0xfffffff; 6 struct node 7 { 8 int b,p; 9 }; 10 node a[110][110]; 11 int m[110]; 12 int pmin,psum,bmax,n; 13 double ans; 14 int main() 15 { 16 int T; 17 scanf("%d",&T); 18 for (int t=1;t<=T;t++) 19 { 20 memset(a,0,sizeof(a)); 21 memset(m,0,sizeof(m)); 22 ans=0.0; 23 scanf("%d",&n); 24 for (int i=1;i<=n;i++) 25 { 26 scanf("%d",&m[i]); 27 for (int j=1;j<=m[i];j++) 28 { 29 scanf("%d%d",&a[i][j].b,&a[i][j].p); 30 } 31 } 32 for (int i=1;i<=n;i++) 33 for (int j=1;j<=m[i];j++) 34 { 35 bmax=a[i][j].b; 36 bool flag=0; 37 psum=a[i][j].p; 38 for (int k=1;k<=n;k++) 39 { 40 if (k==i) continue; 41 pmin=INF; 42 for (int q=1;q<=m[k];q++) 43 if (a[k][q].b>=bmax && a[k][q].p<pmin) 44 { 45 pmin=a[k][q].p; 46 // flag=1; 47 } 48 // if (!flag) break; 49 psum+=pmin; 50 } 51 // if (!flag) break; 52 if (ans<(double)bmax/psum) ans=(double)bmax/psum; 53 } 54 printf("%.3f\n",ans); 55 } 56 return 0; 57 }
时间: 2024-12-21 02:27:11