| # | Time | Username | Problem | Language | Result | Execution time | Memory |
|---|---|---|---|---|---|---|---|
| 1331092 | nguyenkhangninh99 | Measures (CEOI22_measures) | C++17 | 913 ms | 5048 KiB |
#include<bits/stdc++.h>
using namespace std;
#define int long long
void solve(){
int n, m, d; cin >> n >> m >> d;
if(m <= 20){
vector<int> a(n + 1);
for(int i = 1; i <= n; i++) cin >> a[i];
auto check = [&](int x){
long double y = x;
vector<long double> cur(a.size(), 0);
cur[0] = -1e15;
for(int i = 1; i < (int)a.size(); i++){
long double diff = cur[i-1]+d-a[i];
if(diff < 0){
cur[i] = (long double)a[i]-min(fabs(diff), y/2);
}else{
if(y/2 < diff) return false;
cur[i] = (long double)a[i]+diff;
}
}
return true;
};
for(int i = 1; i <= m; i++){
int x; cin >> x;
a.push_back(x);
sort(a.begin()+1, a.end());
int l = 0, r = 1e16;
while(l <= r){
int mid = (l + r) / 2;
if(check(mid)) r = mid - 1;
else l = mid + 1;
}
cout << l / 2;
if(l & 1) cout << ".5";
cout << " ";
}
}
}
signed main(){
ios_base::sync_with_stdio(false);
cin.tie(0); cout.tie(0);
solve();
}| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
