답안 #1018785

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
1018785 2024-07-10T09:45:57 Z vjudge1 Self Study (JOI22_ho_t2) C++17
0 / 100
129 ms 2792 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 0 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 1 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 0 ms 348 KB Output is correct
10 Correct 2 ms 344 KB Output is correct
11 Correct 129 ms 2652 KB Output is correct
12 Correct 123 ms 2648 KB Output is correct
13 Correct 73 ms 2792 KB Output is correct
14 Incorrect 86 ms 2652 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 344 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 42 ms 1628 KB Output is correct
10 Correct 28 ms 1116 KB Output is correct
11 Correct 21 ms 856 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 2 ms 348 KB Output isn't correct
19 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 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 1 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 0 ms 348 KB Output is correct
10 Correct 2 ms 344 KB Output is correct
11 Correct 129 ms 2652 KB Output is correct
12 Correct 123 ms 2648 KB Output is correct
13 Correct 73 ms 2792 KB Output is correct
14 Incorrect 86 ms 2652 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 344 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 42 ms 1628 KB Output is correct
10 Correct 28 ms 1116 KB Output is correct
11 Correct 21 ms 856 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 2 ms 348 KB Output isn't correct
19 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 0 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 1 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 0 ms 348 KB Output is correct
10 Correct 2 ms 344 KB Output is correct
11 Correct 129 ms 2652 KB Output is correct
12 Correct 123 ms 2648 KB Output is correct
13 Correct 73 ms 2792 KB Output is correct
14 Incorrect 86 ms 2652 KB Output isn't correct
15 Halted 0 ms 0 KB -