社区讨论
30分求助!
P1542包裹快递参与者 2已保存回复 2
讨论操作
快速查看讨论及其快照的属性,并进行相关操作。
- 当前回复
- 2 条
- 当前快照
- 1 份
- 快照标识符
- @lrmvmoan
- 此快照首次捕获于
- 2024/01/21 10:25 2 年前
- 此快照最后确认于
- 2024/01/21 12:49 2 年前
CPP
//p1542
#include <bits/stdc++.h>
using namespace std;
const int N = 2 * 10e5;
struct node {
long double x, y, s;
} a[N];
int n;
int cjc(long double x) {
long double t = 0;
for (int i = 1; i <= n; i++) {
long double dis = a[i].s;
t += dis / x;
if (t > a[i].y)
return 0;
else {
t = max(t, a[i].x);
}
}
return 1;
}
int main() {
cin >> n;
for (int i = 1; i <= n; i++) {
cin >> a[i].x >> a[i].y >> a[i].s;
}
long double l = 0, r = 10e7;
long double ans = 0;
while (r - l >= 0.00001) {
long long mid = (l + r) / 2;
if (cjc(mid)) {
r = mid - 1;
ans = mid;
} else {
l = mid + 1;
}
}
cout << fixed << setprecision(2) << ans << endl;
return 0;
}
回复
共 2 条回复,欢迎继续交流。
正在加载回复...