Submission #19118

#TimeUsernameProblemLanguageResultExecution timeMemory
19118eaststarBe Two Bees (OJUZ10_b2b)C++14
0 / 100
1000 ms2644 KiB
#include <stdio.h> int n,ai,aj; long long h[100010],t[100010],H; int f(double m){ int i,mi,mj; double s,m1=0,m2=0; for(i=1;i<=n;++i){ s=h[i]+m/t[i]; if(m1<s)m2=m1,mj=mi,m1=s,mi=i; else if(m2<s)m2=s,mj=i; } if(m1+m2>=H)ai=mi,aj=mj; return m1+m2>=H; } int main(){ int i; scanf("%d",&n); for(i=1;i<=n;++i)scanf("%lld",h+i),H+=h[i]; for(i=1;i<=n;++i)scanf("%lld",t+i); double l=0,r=1e10,m,ans; while(r-l>1e-8){ m=(l+r)/2; if(f(m))ans=m,r=m; else l=m; } if(ai>aj)ai^=aj^=ai^=aj; printf("%d %d",ai,aj); return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...