Submission #638707

#TimeUsernameProblemLanguageResultExecution timeMemory
638707jamezzzSelf Study (JOI22_ho_t2)C++17
100 / 100
635 ms9228 KiB
#include <bits/stdc++.h> using namespace std; #define pf printf #define sf scanf typedef long long ll; typedef pair<int,int> ii; #define maxn 300005 int n,m,a[maxn],b[maxn]; int main(){ sf("%d%d",&n,&m); for(int i=0;i<n;++i){ sf("%d",&a[i]); } for(int i=0;i<n;++i){ sf("%d",&b[i]); } ll lo=0,hi=1e18+10,mid,res=0; while(lo<=hi){ mid=(lo+hi)>>1; ll rem=(ll)n*m; for(int i=0;i<n;++i){ ll take=min((ll)m,(mid+a[i]-1)/a[i]); ll self=max((mid-(take*a[i])+b[i]-1)/b[i],0ll); ll self2=(mid+b[i]-1)/b[i]; rem-=min(take+self,self2); if(rem<0)break; } if(rem>=0){ res=mid; lo=mid+1; } else hi=mid-1; } pf("%lld\n",res); }

Compilation message (stderr)

Main.cpp: In function 'int main()':
Main.cpp:14:4: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   14 |  sf("%d%d",&n,&m);
      |    ^
Main.cpp:16:5: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   16 |   sf("%d",&a[i]);
      |     ^
Main.cpp:19:5: warning: ignoring return value of 'int scanf(const char*, ...)' declared with attribute 'warn_unused_result' [-Wunused-result]
   19 |   sf("%d",&b[i]);
      |     ^
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...