QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#101755 | #5667. Meeting Places | wnmrmr | AC ✓ | 260ms | 5544kb | C++20 | 8.6kb | 2023-05-01 03:48:35 | 2023-05-01 03:48:37 |
Judging History
answer
//#pragma GCC optimize("O3,unroll-loops")
//#pragma GCC target("avx2,bmi,bmi2,lzcnt,popcnt")
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using ld = long double;
#define int ll
#define double ld
#define endl '\n'
#define all(v) v.begin(), v.end()
#define pb push_back
void dbg_out() { cerr << endl; }
template <typename H, typename... T>
void dbg_out(H h, T... t) { cerr << ' ' << h; dbg_out(t...); }
#define dbg(...) { cerr << #__VA_ARGS__ << ':'; dbg_out(__VA_ARGS__); }
// Double geometry
// WARNING: INPUT IN DOUBLE IS SLOW, IF POSSIBLE READ WITH INTEGER
constexpr double EPS = 1e-10;
bool zero(double x) {
return abs(x) <= EPS;
}
// CORNER: point = (0, 0)
struct point {
double x, y;
point(): x(), y() {}
point(double _x, double _y): x(_x), y(_y) {}
point operator+(point rhs) { return point(x+rhs.x, y+rhs.y); }
point operator-(point rhs) { return point(x-rhs.x, y-rhs.y); }
point operator*(double k) { return point(x*k, y*k); }
point operator/(double k) { return point(x/k, y/k); }
double operator*(point rhs) { return x*rhs.x + y*rhs.y; }
double operator^(point rhs) { return x*rhs.y - y*rhs.x; }
point rotated(point polar) { return point(*this^polar,*this*polar); }
point rotated(double ang) { return (*this).rotated(point(sin(ang),cos(ang))); }
double norm2() { return *this * *this; }
double norm() { return sqrt(norm2()); }
bool operator<(const point& rhs) const {
return x < rhs.x - EPS || (zero(x-rhs.x) && y < rhs.y - EPS);
}
bool operator==(const point& rhs) const {
return zero(x-rhs.x) && zero(y-rhs.y);
}
};
const point ccw90(1, 0), cw90(-1, 0);
// angular comparison in [0, 2pi)
// smallest is (1, 0)
// CORNER: a || b == (0, 0)
bool ang_cmp(point a, point b) {
auto quad = [](point p) -> bool {
// 0 if ang in [0, pi), 1 if in [pi, 2pi)
return p.y < 0 || (p.y == 0 && p.x < 0);
};
using tup = tuple<bool, double>;
return tup{quad(a), 0} < tup{quad(b), a^b};
}
double dist2(point p, point q) { // squared distance
return (p - q)*(p - q);
}
double dist(point p, point q) {
return sqrt(dist2(p, q));
}
double area2(point a, point b, point c) { // two times signed area of triangle abc
return (b - a) ^ (c - a);
}
bool left(point a, point b, point c) {
return area2(a, b, c) > EPS; // counterclockwise
}
bool right(point a, point b, point c) {
return area2(a, b, c) < -EPS; // clockwise
}
bool collinear(point a, point b, point c) {
return zero(area2(a,b,c));
}
// CORNER: a || b == (0, 0)
int parallel(point a, point b) {
if(!zero(a ^ b)) return 0;
return (a.x>0) == (b.x>0) && (a.y > 0) == (b.y > 0) ? 1 : -1;
}
// CORNER: a == b
struct segment {
point a, b;
segment() {}
segment(point _a, point _b): a(_a), b(_b) {}
point vec() { return b - a; }
bool contains(point p) {
return a == p || b == p || parallel(a-p, b-p) == -1;
}
point proj(point p) { // projection of p onto segment
p = p - a;
point v = vec();
return a + v*((p*v)/(v*v));
}
};
bool intersects(segment r, segment s) {
if(r.contains(s.a) || r.contains(s.b) || s.contains(r.a) || s.contains(r.b)) return 1;
return left(r.a, r.b, s.a) != left(r.a, r.b, s.b) &&
left(s.a, s.b, r.a) != left(s.a, s.b, r.b);
}
bool parallel(segment r, segment s) {
return parallel(r.vec(), s.vec());
}
point line_intersection(segment r, segment s) {
if(parallel(r, s)) return point(HUGE_VAL, HUGE_VAL);
point vr = r.vec(), vs = s.vec();
double cr = vr ^ r.a, cs = vs ^ s.a;
return (vs*cr - vr*cs) / (vr ^ vs);
}
struct polygon {
vector<point> vp;
int n;
polygon(vector<point>& _vp): vp(_vp), n(vp.size()) {
if(area2() < -EPS) reverse(all(_vp));
}
int nxt(int i) { return i+1<n ? i+1 : 0; }
int prv(int i) { return i ? i-1 : 0; }
// If positive, the polygon is in ccw order. It is in cw order otherwise.
double area2() { // O(n
double acum = 0;
for(int i = 0; i < n; i++)
acum += vp[i] ^ vp[nxt(i)];
return acum;
}
bool has(point p) { // O(log n). The polygon must be convex and in ccw order
if(right(vp[0], vp[1], p) || left(vp[0], vp[n-1], p)) return 0;
int lo = 1, hi = n;
while(lo + 1 < hi) {
int mid = (lo + hi) / 2;
if(!right(vp[0], vp[mid], p)) lo = mid;
else hi = mid;
}
return hi != n ? !right(vp[lo], vp[hi], p) : dist2(vp[0], p) < dist2(vp[0], vp[n-1]) + EPS;
}
double calipers() { // O(n). The polygon must be convex and in ccw order.
double ans = 0;
for(int i = 0, j = 1; i < n; i++) {
point v = vp[nxt(i)] - vp[i];
while((v ^ (vp[nxt(j)] - vp[j])) > EPS) j = nxt(j);
// do something with vp[i] and vp[j]
ans = max(ans, dist2(vp[i], vp[j])); // Example with polygon diameter squared
}
return ans;
}
// returns the maximal point using comparator cmp
// example:
// extreme([&](point p, point q) {return p * v > q * v;});
// returns point with maximal dot product with v
int extreme(const function<bool(point, point)> &cmp) {
auto is_extreme = [&](int i, bool& cur_dir) -> bool {
cur_dir = cmp(vp[nxt(i)], vp[i]);
return !cmp(vp[prv(i)], vp[i]) && !cur_dir;
};
bool last_dir, cur_dir;
if(is_extreme(0, last_dir)) return 0;
int lo = 0, hi = n;
while(lo + 1 < hi) {
int m = (lo + hi) / 2;
if(is_extreme(m, cur_dir)) return m;
bool rel_dir = cmp(vp[m], vp[lo]);
if((!last_dir && cur_dir) || (last_dir == cur_dir && rel_dir == cur_dir)) {
lo = m;
last_dir = cur_dir;
} else hi = m;
}
return lo;
}
pair<int, int> tangent(point p) { // O(log n) for convex polygon in ccw orientation
// Finds the indices of the two tangents to an external point q
auto left_tangent = [&](point r, point s) -> bool {
return right(p, r, s);
};
auto right_tangent = [&](point r, point s) -> bool {
return left(p, r, s);
};
return {extreme(left_tangent), extreme(right_tangent)};
}
void normalize() { // p[0] becomes the lowest leftmost point
rotate(vp.begin(), min_element(all(vp)), vp.end());
}
polygon operator+(polygon& rhs) { // Minkowsky sum
normalize();
rhs.normalize();
vector<point> sum;
double dir;
for(int i = 0, j = 0; i < n || j < rhs.n; i += dir > -EPS, j += dir < EPS) {
sum.push_back(vp[i % n] + rhs.vp[j % rhs.n]);
dir = (vp[(i + 1) % n] - vp[i % n])
^ (rhs.vp[(j + 1) % rhs.n] - rhs.vp[j % rhs.n]);
}
return polygon(sum);
}
};
// Circle
// Basic structure of circle and operations related with it.
//
// All operations' time complexity are O(1)
const double PI = acos(-1);
struct circle {
point o; double r;
circle() {}
circle(point _o, double _r) : o(_o), r(_r) {}
circle(point a, point b, point c) {
b = b - a;
c = c - a;
double B = b.norm2();
double C = c.norm2();
double D = b ^ c;
assert(abs(D) > EPS);
o = a + point( (c.y*B - b.y*C) / (2*D), (b.x * C - c.x * B) / (2*D) );
r = (o-a).norm();
}
bool has(point p) {
return (o - p).norm2() < r*r + EPS;
}
vector<point> operator/(circle c) { // Intersection of circles.
vector<point> inter; // The points in the output are in ccw order.
double d = (o - c.o).norm();
if(r + c.r < d - EPS || d + min(r, c.r) < max(r, c.r) - EPS)
return {};
double x = (r*r - c.r*c.r + d*d) / (2*d);
double y = sqrt(r*r - x*x);
point v = (c.o - o) / d;
inter.pb(o + v*x + v.rotated(cw90)*y);
if(y > EPS) inter.pb(o + v*x + v.rotated(ccw90)*y);
return inter;
}
vector<point> tang(point p){
double d = sqrt(dist2(p, o) - r*r);
return *this / circle(p, d);
}
bool contains(point p){ // non strictly inside
double d = dist2(o, p);
return d < r * r + EPS;
}
};
void solve() {
int n, ops, _var;
cin >> n >> ops >> _var;
auto read = [&]() -> int {
int res = _var;
_var = (_var * 233811181 + 1) % ( (1ll<<31) - 1 );
return res;
};
vector<point> vp(n);
for(auto &[x, y]: vp) {
int _x = read();
int _y = read();
x = _x;
y = _y;
}
vector<vector<pair<double, int>>> tr(n);
for(int ini=0;ini<n;ini++) {
circle c(vp[ini], 0);
auto &[o, r] = c;
auto &cur = tr[ini];
for(int i=ini;i<n;i++) if (!c.contains(vp[i])) {
cur.emplace_back(r, i-1);
o = vp[i], r = 0;
for(int j=ini;j<i;j++) if (!c.contains(vp[j])) {
o = (vp[i] + vp[j]) / 2;
r = dist(o, vp[i]);
for(int k=ini;k<j;k++) if(!c.contains(vp[k]))
c = circle(vp[i], vp[j], vp[k]);
}
}
cur.emplace_back(r, n-1);
}
const double INF = 1e18;
vector<double> cur(n, INF), nxt(n, INF);
for(auto &[cost, i]: tr[0]) {
cur[i] = cost;
}
double ans = cur.back();
for(int _=0;_<ops-1;_++) {
fill(all(nxt), INF);
for(int i=0;i<n-1;i++) if(cur[i] != INF) {
for(auto &[cost, j]: tr[i+1]) {
if(cur[i] + cost < EPS) {
}
nxt[j] = min(nxt[j], cur[i] + cost);
}
}
swap(cur, nxt);
ans = min(ans, cur.back());
}
cout << fixed << setprecision(10);
cout << ans << '\n';
}
signed main() {
ios::sync_with_stdio(false); cin.tie(0);
solve();
}
详细
Test #1:
score: 100
Accepted
time: 2ms
memory: 3664kb
input:
100 23 213
output:
1319350480.8007325387
result:
ok found '1319350480.8007326', expected '1319350480.8007326', error '0.0000000'
Test #2:
score: 0
Accepted
time: 2ms
memory: 3592kb
input:
10 1 1060
output:
1042753143.3451676866
result:
ok found '1042753143.3451676', expected '1042753143.3451676', error '0.0000000'
Test #3:
score: 0
Accepted
time: 0ms
memory: 3700kb
input:
10 10 2373
output:
0.0000000000
result:
ok found '0.0000000', expected '0.0000000', error '-0.0000000'
Test #4:
score: 0
Accepted
time: 2ms
memory: 3700kb
input:
10 2 3396
output:
1236610536.9469230312
result:
ok found '1236610536.9469230', expected '1236610536.9469230', error '0.0000000'
Test #5:
score: 0
Accepted
time: 2ms
memory: 3716kb
input:
10 3 1998
output:
973790809.8224442275
result:
ok found '973790809.8224442', expected '973790809.8224442', error '0.0000000'
Test #6:
score: 0
Accepted
time: 0ms
memory: 3612kb
input:
10 4 562
output:
910867389.9069329376
result:
ok found '910867389.9069330', expected '910867389.9069330', error '0.0000000'
Test #7:
score: 0
Accepted
time: 2ms
memory: 3584kb
input:
10 5 6048
output:
818240814.7105149820
result:
ok found '818240814.7105150', expected '818240814.7105150', error '0.0000000'
Test #8:
score: 0
Accepted
time: 2ms
memory: 3596kb
input:
10 6 2524
output:
500106979.3467762744
result:
ok found '500106979.3467762', expected '500106979.3467762', error '0.0000000'
Test #9:
score: 0
Accepted
time: 2ms
memory: 3580kb
input:
10 7 5415
output:
559478971.4320058867
result:
ok found '559478971.4320059', expected '559478971.4320059', error '0.0000000'
Test #10:
score: 0
Accepted
time: 2ms
memory: 3756kb
input:
10 8 1438
output:
500309745.4627699936
result:
ok found '500309745.4627700', expected '500309745.4627700', error '0.0000000'
Test #11:
score: 0
Accepted
time: 2ms
memory: 3580kb
input:
10 9 3172
output:
162279748.8753451739
result:
ok found '162279748.8753452', expected '162279748.8753452', error '0.0000000'
Test #12:
score: 0
Accepted
time: 2ms
memory: 3656kb
input:
100 1 8316
output:
1320052902.1522902527
result:
ok found '1320052902.1522903', expected '1320052902.1522903', error '0.0000000'
Test #13:
score: 0
Accepted
time: 1ms
memory: 3632kb
input:
100 100 4179
output:
0.0000000000
result:
ok found '0.0000000', expected '0.0000000', error '-0.0000000'
Test #14:
score: 0
Accepted
time: 2ms
memory: 3824kb
input:
100 12 3405
output:
1329687126.1304548786
result:
ok found '1329687126.1304548', expected '1329687126.1304548', error '0.0000000'
Test #15:
score: 0
Accepted
time: 1ms
memory: 3764kb
input:
100 16 8378
output:
1338056514.4842694717
result:
ok found '1338056514.4842694', expected '1338056514.4842694', error '0.0000000'
Test #16:
score: 0
Accepted
time: 2ms
memory: 3656kb
input:
100 2 1858
output:
1310392496.1430580794
result:
ok found '1310392496.1430581', expected '1310392496.1430581', error '0.0000000'
Test #17:
score: 0
Accepted
time: 0ms
memory: 3824kb
input:
100 25 4596
output:
1440464106.6229296720
result:
ok found '1440464106.6229296', expected '1440464106.6229298', error '0.0000000'
Test #18:
score: 0
Accepted
time: 0ms
memory: 3624kb
input:
100 3 5633
output:
1399621082.6142736834
result:
ok found '1399621082.6142738', expected '1399621082.6142738', error '0.0000000'
Test #19:
score: 0
Accepted
time: 2ms
memory: 3660kb
input:
100 32 7827
output:
1342073760.5322329637
result:
ok found '1342073760.5322330', expected '1342073760.5322330', error '0.0000000'
Test #20:
score: 0
Accepted
time: 2ms
memory: 3632kb
input:
100 4 3693
output:
1339808706.7098688791
result:
ok found '1339808706.7098689', expected '1339808706.7098689', error '0.0000000'
Test #21:
score: 0
Accepted
time: 2ms
memory: 3624kb
input:
100 5 2252
output:
1394874243.5057042023
result:
ok found '1394874243.5057042', expected '1394874243.5057042', error '0.0000000'
Test #22:
score: 0
Accepted
time: 0ms
memory: 3720kb
input:
100 50 4254
output:
1322809748.4052835440
result:
ok found '1322809748.4052835', expected '1322809748.4052832', error '0.0000000'
Test #23:
score: 0
Accepted
time: 2ms
memory: 3636kb
input:
100 6 53
output:
1364441356.1700988172
result:
ok found '1364441356.1700988', expected '1364441356.1700988', error '0.0000000'
Test #24:
score: 0
Accepted
time: 1ms
memory: 3740kb
input:
100 64 4337
output:
1180754550.2422839039
result:
ok found '1180754550.2422838', expected '1180754550.2422838', error '0.0000000'
Test #25:
score: 0
Accepted
time: 2ms
memory: 3656kb
input:
100 7 5366
output:
1423557626.3586797034
result:
ok found '1423557626.3586798', expected '1423557626.3586798', error '0.0000000'
Test #26:
score: 0
Accepted
time: 2ms
memory: 3764kb
input:
100 8 8509
output:
1353289305.3519955645
result:
ok found '1353289305.3519955', expected '1353289305.3519957', error '0.0000000'
Test #27:
score: 0
Accepted
time: 1ms
memory: 3656kb
input:
100 9 1423
output:
1228887266.5661669594
result:
ok found '1228887266.5661669', expected '1228887266.5661671', error '0.0000000'
Test #28:
score: 0
Accepted
time: 3ms
memory: 3808kb
input:
100 91 4806
output:
656574218.5086755045
result:
ok found '656574218.5086755', expected '656574218.5086756', error '0.0000000'
Test #29:
score: 0
Accepted
time: 1ms
memory: 3684kb
input:
100 92 4024
output:
794693428.6162240338
result:
ok found '794693428.6162241', expected '794693428.6162238', error '0.0000000'
Test #30:
score: 0
Accepted
time: 3ms
memory: 3700kb
input:
100 93 606
output:
677641787.4863122115
result:
ok found '677641787.4863123', expected '677641787.4863122', error '0.0000000'
Test #31:
score: 0
Accepted
time: 0ms
memory: 3636kb
input:
100 94 7265
output:
686423239.2626027704
result:
ok found '686423239.2626028', expected '686423239.2626028', error '0.0000000'
Test #32:
score: 0
Accepted
time: 3ms
memory: 3828kb
input:
100 95 8469
output:
328187125.9235950687
result:
ok found '328187125.9235951', expected '328187125.9235951', error '0.0000000'
Test #33:
score: 0
Accepted
time: 2ms
memory: 3624kb
input:
100 96 1079
output:
492964787.6259085392
result:
ok found '492964787.6259086', expected '492964787.6259086', error '0.0000000'
Test #34:
score: 0
Accepted
time: 1ms
memory: 3664kb
input:
100 97 5453
output:
258652807.7906564699
result:
ok found '258652807.7906565', expected '258652807.7906564', error '0.0000000'
Test #35:
score: 0
Accepted
time: 2ms
memory: 3800kb
input:
100 98 1778
output:
159490192.1188906933
result:
ok found '159490192.1188907', expected '159490192.1188908', error '0.0000000'
Test #36:
score: 0
Accepted
time: 2ms
memory: 3628kb
input:
100 99 1825
output:
33793756.3289980424
result:
ok found '33793756.3289980', expected '33793756.3289980', error '0.0000000'
Test #37:
score: 0
Accepted
time: 8ms
memory: 4432kb
input:
1000 1 2453
output:
1486878333.2858574132
result:
ok found '1486878333.2858574', expected '1486878333.2858574', error '0.0000000'
Test #38:
score: 0
Accepted
time: 44ms
memory: 4308kb
input:
1000 1000 1798
output:
0.0000000000
result:
ok found '0.0000000', expected '0.0000000', error '-0.0000000'
Test #39:
score: 0
Accepted
time: 25ms
memory: 4312kb
input:
1000 125 43
output:
1474031969.5174233053
result:
ok found '1474031969.5174234', expected '1474031969.5174232', error '0.0000000'
Test #40:
score: 0
Accepted
time: 22ms
memory: 4352kb
input:
1000 128 8107
output:
1440374614.9391976207
result:
ok found '1440374614.9391975', expected '1440374614.9391975', error '0.0000000'
Test #41:
score: 0
Accepted
time: 31ms
memory: 4468kb
input:
1000 15 6639
output:
1491336935.5536249471
result:
ok found '1491336935.5536249', expected '1491336935.5536251', error '0.0000000'
Test #42:
score: 0
Accepted
time: 27ms
memory: 4516kb
input:
1000 16 1251
output:
1445211807.1160963748
result:
ok found '1445211807.1160963', expected '1445211807.1160963', error '0.0000000'
Test #43:
score: 0
Accepted
time: 20ms
memory: 4444kb
input:
1000 2 1303
output:
1468989868.6486022632
result:
ok found '1468989868.6486022', expected '1468989868.6486022', error '0.0000000'
Test #44:
score: 0
Accepted
time: 23ms
memory: 4264kb
input:
1000 250 4457
output:
1487674970.7660159559
result:
ok found '1487674970.7660160', expected '1487674970.7660158', error '0.0000000'
Test #45:
score: 0
Accepted
time: 31ms
memory: 4556kb
input:
1000 256 4135
output:
1474218271.5140772276
result:
ok found '1474218271.5140772', expected '1474218271.5140772', error '0.0000000'
Test #46:
score: 0
Accepted
time: 17ms
memory: 4288kb
input:
1000 3 713
output:
1482496228.9904776600
result:
ok found '1482496228.9904776', expected '1482496228.9904778', error '0.0000000'
Test #47:
score: 0
Accepted
time: 14ms
memory: 4476kb
input:
1000 31 8139
output:
1494361943.4799194892
result:
ok found '1494361943.4799194', expected '1494361943.4799194', error '0.0000000'
Test #48:
score: 0
Accepted
time: 16ms
memory: 4328kb
input:
1000 32 7916
output:
1499333171.0938647797
result:
ok found '1499333171.0938647', expected '1499333171.0938647', error '0.0000000'
Test #49:
score: 0
Accepted
time: 14ms
memory: 4540kb
input:
1000 4 2432
output:
1455826569.0394102234
result:
ok found '1455826569.0394101', expected '1455826569.0394101', error '0.0000000'
Test #50:
score: 0
Accepted
time: 13ms
memory: 4388kb
input:
1000 5 2457
output:
1452189628.1967140646
result:
ok found '1452189628.1967142', expected '1452189628.1967139', error '0.0000000'
Test #51:
score: 0
Accepted
time: 37ms
memory: 4328kb
input:
1000 500 8734
output:
1432279300.5662784538
result:
ok found '1432279300.5662785', expected '1432279300.5662787', error '0.0000000'
Test #52:
score: 0
Accepted
time: 43ms
memory: 4556kb
input:
1000 512 1866
output:
1446804508.0351865209
result:
ok found '1446804508.0351865', expected '1446804508.0351865', error '0.0000000'
Test #53:
score: 0
Accepted
time: 12ms
memory: 4156kb
input:
1000 6 1580
output:
1490178756.8566034751
result:
ok found '1490178756.8566034', expected '1490178756.8566034', error '0.0000000'
Test #54:
score: 0
Accepted
time: 20ms
memory: 4336kb
input:
1000 62 3047
output:
1482100829.6467108954
result:
ok found '1482100829.6467109', expected '1482100829.6467109', error '0.0000000'
Test #55:
score: 0
Accepted
time: 20ms
memory: 4332kb
input:
1000 64 4836
output:
1441850815.8553613515
result:
ok found '1441850815.8553615', expected '1441850815.8553615', error '0.0000000'
Test #56:
score: 0
Accepted
time: 25ms
memory: 4388kb
input:
1000 7 5269
output:
1473104490.7287983542
result:
ok found '1473104490.7287984', expected '1473104490.7287984', error '0.0000000'
Test #57:
score: 0
Accepted
time: 17ms
memory: 4460kb
input:
1000 8 2649
output:
1459133296.6066234506
result:
ok found '1459133296.6066234', expected '1459133296.6066234', error '0.0000000'
Test #58:
score: 0
Accepted
time: 15ms
memory: 4224kb
input:
1000 9 3999
output:
1482914523.3807039035
result:
ok found '1482914523.3807039', expected '1482914523.3807039', error '0.0000000'
Test #59:
score: 0
Accepted
time: 36ms
memory: 4308kb
input:
1000 991 3610
output:
295501032.4780874289
result:
ok found '295501032.4780874', expected '295501032.4780874', error '0.0000000'
Test #60:
score: 0
Accepted
time: 45ms
memory: 4508kb
input:
1000 992 3030
output:
337274092.6540381879
result:
ok found '337274092.6540382', expected '337274092.6540381', error '0.0000000'
Test #61:
score: 0
Accepted
time: 45ms
memory: 4332kb
input:
1000 993 6980
output:
222375113.1057986107
result:
ok found '222375113.1057986', expected '222375113.1057986', error '0.0000000'
Test #62:
score: 0
Accepted
time: 44ms
memory: 4472kb
input:
1000 994 7222
output:
218007091.6933040881
result:
ok found '218007091.6933041', expected '218007091.6933041', error '0.0000000'
Test #63:
score: 0
Accepted
time: 45ms
memory: 4324kb
input:
1000 995 1323
output:
169577520.2236528745
result:
ok found '169577520.2236529', expected '169577520.2236529', error '0.0000000'
Test #64:
score: 0
Accepted
time: 35ms
memory: 4236kb
input:
1000 996 2761
output:
135524743.9114487152
result:
ok found '135524743.9114487', expected '135524743.9114488', error '0.0000000'
Test #65:
score: 0
Accepted
time: 40ms
memory: 4304kb
input:
1000 997 4946
output:
87043806.4227920886
result:
ok found '87043806.4227921', expected '87043806.4227921', error '0.0000000'
Test #66:
score: 0
Accepted
time: 35ms
memory: 4396kb
input:
1000 998 842
output:
24094936.5511916879
result:
ok found '24094936.5511917', expected '24094936.5511917', error '0.0000000'
Test #67:
score: 0
Accepted
time: 40ms
memory: 4304kb
input:
1000 999 5078
output:
4597519.0646550341
result:
ok found '4597519.0646550', expected '4597519.0646550', error '0.0000000'
Test #68:
score: 0
Accepted
time: 58ms
memory: 5484kb
input:
2000 1 2633
output:
1502350354.4995269895
result:
ok found '1502350354.4995270', expected '1502350354.4995270', error '0.0000000'
Test #69:
score: 0
Accepted
time: 148ms
memory: 5236kb
input:
2000 1000 6248
output:
1469507093.4042110490
result:
ok found '1469507093.4042110', expected '1469507093.4042110', error '0.0000000'
Test #70:
score: 0
Accepted
time: 134ms
memory: 5188kb
input:
2000 1024 2507
output:
1448066815.3184789366
result:
ok found '1448066815.3184788', expected '1448066815.3184788', error '0.0000000'
Test #71:
score: 0
Accepted
time: 103ms
memory: 5460kb
input:
2000 125 3002
output:
1476846542.0318910533
result:
ok found '1476846542.0318911', expected '1476846542.0318909', error '0.0000000'
Test #72:
score: 0
Accepted
time: 69ms
memory: 5260kb
input:
2000 128 5622
output:
1464957942.6400379967
result:
ok found '1464957942.6400380', expected '1464957942.6400380', error '0.0000000'
Test #73:
score: 0
Accepted
time: 45ms
memory: 5168kb
input:
2000 15 5891
output:
1490626300.1558671650
result:
ok found '1490626300.1558671', expected '1490626300.1558671', error '0.0000000'
Test #74:
score: 0
Accepted
time: 50ms
memory: 5292kb
input:
2000 16 1750
output:
1504400245.4149806678
result:
ok found '1504400245.4149806', expected '1504400245.4149806', error '0.0000000'
Test #75:
score: 0
Accepted
time: 187ms
memory: 5496kb
input:
2000 1990 6698
output:
313951388.4046511542
result:
ok found '313951388.4046512', expected '313951388.4046511', error '0.0000000'
Test #76:
score: 0
Accepted
time: 162ms
memory: 5164kb
input:
2000 1991 80
output:
248800118.6793060585
result:
ok found '248800118.6793061', expected '248800118.6793060', error '0.0000000'
Test #77:
score: 0
Accepted
time: 175ms
memory: 5140kb
input:
2000 1992 4802
output:
257156356.5216794969
result:
ok found '257156356.5216795', expected '257156356.5216795', error '0.0000000'
Test #78:
score: 0
Accepted
time: 181ms
memory: 5328kb
input:
2000 1993 169
output:
197117968.4482248139
result:
ok found '197117968.4482248', expected '197117968.4482248', error '0.0000000'
Test #79:
score: 0
Accepted
time: 176ms
memory: 5372kb
input:
2000 1994 6269
output:
109695555.8088500974
result:
ok found '109695555.8088501', expected '109695555.8088501', error '0.0000000'
Test #80:
score: 0
Accepted
time: 177ms
memory: 5368kb
input:
2000 1995 3452
output:
179563229.3967842731
result:
ok found '179563229.3967843', expected '179563229.3967843', error '0.0000000'
Test #81:
score: 0
Accepted
time: 260ms
memory: 5368kb
input:
2000 1996 2191
output:
84783513.6455895729
result:
ok found '84783513.6455896', expected '84783513.6455896', error '0.0000000'
Test #82:
score: 0
Accepted
time: 185ms
memory: 5352kb
input:
2000 1997 7803
output:
53635859.3399899750
result:
ok found '53635859.3399900', expected '53635859.3399900', error '0.0000000'
Test #83:
score: 0
Accepted
time: 215ms
memory: 5512kb
input:
2000 1998 8341
output:
33466185.8149442279
result:
ok found '33466185.8149442', expected '33466185.8149442', error '0.0000000'
Test #84:
score: 0
Accepted
time: 195ms
memory: 5428kb
input:
2000 1999 6773
output:
2608075.4652832613
result:
ok found '2608075.4652833', expected '2608075.4652833', error '0.0000000'
Test #85:
score: 0
Accepted
time: 50ms
memory: 5404kb
input:
2000 2 4496
output:
1484602254.1310011938
result:
ok found '1484602254.1310012', expected '1484602254.1310012', error '0.0000000'
Test #86:
score: 0
Accepted
time: 178ms
memory: 5252kb
input:
2000 2000 5384
output:
0.0000000000
result:
ok found '0.0000000', expected '0.0000000', error '-0.0000000'
Test #87:
score: 0
Accepted
time: 93ms
memory: 5336kb
input:
2000 250 1029
output:
1465117434.0631005594
result:
ok found '1465117434.0631006', expected '1465117434.0631006', error '0.0000000'
Test #88:
score: 0
Accepted
time: 62ms
memory: 5020kb
input:
2000 256 5220
output:
1481878242.2184739700
result:
ok found '1481878242.2184739', expected '1481878242.2184739', error '0.0000000'
Test #89:
score: 0
Accepted
time: 93ms
memory: 5392kb
input:
2000 3 8403
output:
1489320436.4318532230
result:
ok found '1489320436.4318533', expected '1489320436.4318533', error '0.0000000'
Test #90:
score: 0
Accepted
time: 65ms
memory: 5376kb
input:
2000 31 6950
output:
1477330995.2251310301
result:
ok found '1477330995.2251310', expected '1477330995.2251310', error '0.0000000'
Test #91:
score: 0
Accepted
time: 71ms
memory: 5280kb
input:
2000 32 3632
output:
1496222504.6490063224
result:
ok found '1496222504.6490064', expected '1496222504.6490064', error '0.0000000'
Test #92:
score: 0
Accepted
time: 82ms
memory: 5544kb
input:
2000 4 2987
output:
1477889007.5054590236
result:
ok found '1477889007.5054591', expected '1477889007.5054593', error '0.0000000'
Test #93:
score: 0
Accepted
time: 53ms
memory: 5336kb
input:
2000 5 2580
output:
1485468254.7374951143
result:
ok found '1485468254.7374952', expected '1485468254.7374952', error '0.0000000'
Test #94:
score: 0
Accepted
time: 118ms
memory: 5404kb
input:
2000 500 6270
output:
1475788271.0275987717
result:
ok found '1475788271.0275989', expected '1475788271.0275989', error '0.0000000'
Test #95:
score: 0
Accepted
time: 124ms
memory: 5284kb
input:
2000 512 1864
output:
1470340599.4749856532
result:
ok found '1470340599.4749856', expected '1470340599.4749856', error '0.0000000'
Test #96:
score: 0
Accepted
time: 50ms
memory: 5164kb
input:
2000 6 8814
output:
1497075189.0134960029
result:
ok found '1497075189.0134959', expected '1497075189.0134962', error '0.0000000'
Test #97:
score: 0
Accepted
time: 88ms
memory: 5404kb
input:
2000 62 4139
output:
1490927650.9732119518
result:
ok found '1490927650.9732120', expected '1490927650.9732120', error '0.0000000'
Test #98:
score: 0
Accepted
time: 59ms
memory: 5316kb
input:
2000 64 7700
output:
1494910912.6137834012
result:
ok found '1494910912.6137834', expected '1494910912.6137834', error '0.0000000'
Test #99:
score: 0
Accepted
time: 71ms
memory: 5472kb
input:
2000 7 8304
output:
1488325857.8219897182
result:
ok found '1488325857.8219898', expected '1488325857.8219898', error '0.0000000'
Test #100:
score: 0
Accepted
time: 41ms
memory: 5204kb
input:
2000 8 7774
output:
1507136513.1715590049
result:
ok found '1507136513.1715591', expected '1507136513.1715591', error '0.0000000'
Test #101:
score: 0
Accepted
time: 58ms
memory: 5292kb
input:
2000 9 2618
output:
1492019659.0373162708
result:
ok found '1492019659.0373163', expected '1492019659.0373163', error '0.0000000'
Test #102:
score: 0
Accepted
time: 2ms
memory: 3900kb
input:
500 1 7674
output:
1463672939.7812498501
result:
ok found '1463672939.7812498', expected '1463672939.7812500', error '0.0000000'
Test #103:
score: 0
Accepted
time: 7ms
memory: 3984kb
input:
500 125 1629
output:
1420736329.0838274076
result:
ok found '1420736329.0838275', expected '1420736329.0838273', error '0.0000000'
Test #104:
score: 0
Accepted
time: 4ms
memory: 3888kb
input:
500 15 7376
output:
1465677415.5063879169
result:
ok found '1465677415.5063879', expected '1465677415.5063879', error '0.0000000'
Test #105:
score: 0
Accepted
time: 6ms
memory: 4068kb
input:
500 250 5627
output:
1411074935.8823579514
result:
ok found '1411074935.8823578', expected '1411074935.8823581', error '0.0000000'
Test #106:
score: 0
Accepted
time: 7ms
memory: 3988kb
input:
500 3 2245
output:
1437079231.5409811666
result:
ok found '1437079231.5409811', expected '1437079231.5409811', error '0.0000000'
Test #107:
score: 0
Accepted
time: 4ms
memory: 3916kb
input:
500 31 8072
output:
1487957912.0314614202
result:
ok found '1487957912.0314615', expected '1487957912.0314612', error '0.0000000'
Test #108:
score: 0
Accepted
time: 8ms
memory: 3908kb
input:
500 62 2415
output:
1454787477.6493773755
result:
ok found '1454787477.6493773', expected '1454787477.6493773', error '0.0000000'
Test #109:
score: 0
Accepted
time: 8ms
memory: 3844kb
input:
500 7 1586
output:
1459900114.7046606799
result:
ok found '1459900114.7046607', expected '1459900114.7046607', error '0.0000000'