/**************************************************************** 题意:给你两个函数f,g,要你求函数h=max(f,g),的最小值;函数f和g的图像只有平行于x轴的线 思路:扫描一遍就ok了 *****************************************************************/ #include <iostream> #include <algorithm> #include <cstdio> #include <cmath> using namespace std; double fv[111],fl[111],gv[111],gl[111]; void input(double *v,double *l,int n) { int i; double cnt=0.0; for(i=0;i<n;i++) { scanf("%lf %lf",&v[i],&l[i]); l[i]+=cnt; cnt=l[i]; } } int main() { int fn,gn; while(scanf("%d",&fn)!=EOF) { input(fv,fl,fn); scanf("%d",&gn); input(gv,gl,gn); int i=0,j=0; double ans=max(gv[0],fv[0]); double pos=0.0; while(i<fn && j<gn) { ans=min(ans,max(fv[i],gv[j])); //printf("i=%d j=%d fl=%f gl=%f ans=%f\n",i,j,fl[i+1],gl[j+1],ans); if(fl[i]<gl[j]) i++; else j++; } printf("%.3f\n",ans); } return 0; }