답안 #1018795

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1018795 2024-07-10T09:50:33 Z vjudge1 Self Study (JOI22_ho_t2) C++17
0 / 100
121 ms 2796 KB
#include "bits/stdc++.h"
using namespace std;
 
#define ar array
typedef long long ll;

//~ #define int ll

signed main() {
	ios::sync_with_stdio(0); cin.tie(0);
	
	int n, m; cin >> n >> m;
	
	vector<int> a(n), b(n);
	
	for(int i=0;i<n;i++){
		cin >> a[i];
	}
	
	for(int i=0;i<n;i++){
		cin >> b[i];
	}
	
	auto check = [&](ll p){
		ll t = 0;
		
		for(int i=0;i<n;i++){
			if(b[i] > a[i]){
				// не выгодно идти на лекции
				ll b_ = (p + b[i] - 1) / b[i];
				// нужно b_ времени чтобы понять на как минимум p
				t += b_;
			} else {
				if(a[i] * 1ll * m >= p){
					// выгодно идти на лекции, и лекций хватает чтобы понять на р
					ll a_ = (p + a[i] - 1) / a[i];
					// нужно а_ времеи чтобы понять на как минимум р
					
					t += a_;
				} else {
					// выгодно идти на лекции, но лекция не хватает чтобы понять на р
					ll a_ = m;
					ll b_ = (p - a[i] * 1ll * a_ + b[i] - 1) / b[i];
					
					t += a_ + b_;
				}
			}
		}
		
		if(t <= n * 1ll * m) return true;
		else return false;
	};
	
	ll l = 1, r = 1e18 + 1;
	while(r - l > 1){
		ll m = (l + r) >> 1;
		
		if(check(m)) l = m;
		else r = m;
	}
	
	if(check(r)) cout<<r<<"\n";
	else cout<<l<<"\n";
}


# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 1 ms 344 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 0 ms 348 KB Output is correct
10 Correct 2 ms 348 KB Output is correct
11 Correct 120 ms 2788 KB Output is correct
12 Correct 121 ms 2788 KB Output is correct
13 Correct 71 ms 2652 KB Output is correct
14 Incorrect 84 ms 2796 KB Output isn't correct
15 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 41 ms 1628 KB Output is correct
10 Correct 28 ms 1112 KB Output is correct
11 Correct 23 ms 860 KB Output is correct
12 Correct 17 ms 860 KB Output is correct
13 Correct 1 ms 348 KB Output is correct
14 Correct 0 ms 348 KB Output is correct
15 Correct 0 ms 348 KB Output is correct
16 Correct 0 ms 348 KB Output is correct
17 Correct 0 ms 348 KB Output is correct
18 Incorrect 1 ms 348 KB Output isn't correct
19 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 1 ms 344 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 0 ms 348 KB Output is correct
10 Correct 2 ms 348 KB Output is correct
11 Correct 120 ms 2788 KB Output is correct
12 Correct 121 ms 2788 KB Output is correct
13 Correct 71 ms 2652 KB Output is correct
14 Incorrect 84 ms 2796 KB Output isn't correct
15 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 ms 348 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 0 ms 348 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 41 ms 1628 KB Output is correct
10 Correct 28 ms 1112 KB Output is correct
11 Correct 23 ms 860 KB Output is correct
12 Correct 17 ms 860 KB Output is correct
13 Correct 1 ms 348 KB Output is correct
14 Correct 0 ms 348 KB Output is correct
15 Correct 0 ms 348 KB Output is correct
16 Correct 0 ms 348 KB Output is correct
17 Correct 0 ms 348 KB Output is correct
18 Incorrect 1 ms 348 KB Output isn't correct
19 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 344 KB Output is correct
2 Correct 0 ms 348 KB Output is correct
3 Correct 0 ms 348 KB Output is correct
4 Correct 0 ms 348 KB Output is correct
5 Correct 0 ms 348 KB Output is correct
6 Correct 1 ms 344 KB Output is correct
7 Correct 0 ms 348 KB Output is correct
8 Correct 0 ms 348 KB Output is correct
9 Correct 0 ms 348 KB Output is correct
10 Correct 2 ms 348 KB Output is correct
11 Correct 120 ms 2788 KB Output is correct
12 Correct 121 ms 2788 KB Output is correct
13 Correct 71 ms 2652 KB Output is correct
14 Incorrect 84 ms 2796 KB Output isn't correct
15 Halted 0 ms 0 KB -