제출 #1325268

#제출 시각아이디문제언어결과실행 시간메모리
1325268altern23Self Study (JOI22_ho_t2)C++20
0 / 100
96 ms5036 KiB
#include <bits/stdc++.h>
using namespace std;

#define ll long long

const int MAXN = 3e5;
const ll INF = 4e18;

ll A[MAXN + 5], B[MAXN + 5];

int main(){
      ios_base::sync_with_stdio(0); cin.tie(0);
      int tc = 1;
      // cin >> tc;
      while (tc--) {
            ll N, M; cin >> N >> M;
            for (int i = 1; i <= N; i++) {
                  cin >> A[i];
            }
            for (int i = 1; i <= N; i++) {
                  cin >> B[i];
            }

            ll lf = 0, rg = INF, ans = -1;
            for (;lf <= rg;) {
                  ll mid = (lf + rg) / 2;
                  ll sisa = 0;
                  for (int i = 1; i <= N; i++) {
                        ll res = max(A[i], B[i]) * M;
                        if (res >= mid) {
                              sisa += (res - mid) / max(A[i], B[i]);
                        }
                        else {
                              sisa -= (mid - res + B[i] - 1) / B[i];
                        }
                  }

                  if (sisa >= 0) {
                        ans = mid;
                        lf = mid + 1;
                  }
                  else rg = mid - 1;
            }

            cout << ans << "\n";
      }
}

/*

*/
#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...