QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#826770 | #9809. The Grand Contest | liuziao | AC ✓ | 1476ms | 100340kb | C++23 | 8.8kb | 2024-12-22 16:01:43 | 2024-12-22 16:01:44 |
Judging History
answer
#include <bits/stdc++.h>
#define int int64_t
using pii = std::pair<int, int>;
const int kMaxN = 4e5 + 5;
struct Node {
int t, id, op;
Node(int _t = 0, int _id = 0, int _op = 0) : t(_t), id(_id), op(_op) {}
friend bool operator <(const Node &n1, const Node &n2) {
if (n1.t != n2.t) return n1.t < n2.t;
else return n1.op > n2.op;
}
};
int n, m, p, d;
int cs, fir;
int cnt[2], now[2], unq[kMaxN];
pii seg[kMaxN], mx[kMaxN], mi[kMaxN];
std::vector<int> v[2], sum[2];
std::vector<Node> vec[2];
struct SGT {
int N;
pii mx[kMaxN * 4], mi[kMaxN * 4];
void pushup(int x) {
mx[x] = std::max(mx[x << 1], mx[x << 1 | 1]);
mi[x] = std::min(mi[x << 1], mi[x << 1 | 1]);
}
void build(int n) {
for (N = 1; N <= n + 1; N <<= 1) {}
for (int i = N; i <= N + n; ++i) mx[i] = ::mx[i - N], mi[i] = ::mi[i - N];
for (int i = N - 1; ~i; --i) pushup(i);
}
pii querymax(int l, int r) {
if (l > r) return {-1e18, 0};
pii ret = {-1e18, 0};
for (l += N - 1, r += N + 1; l ^ r ^ 1; l >>= 1, r >>= 1) {
if (~l & 1) ret = std::max(ret, mx[l ^ 1]);
if (r & 1) ret = std::max(ret, mx[r ^ 1]);
}
return ret;
}
pii querymin(int l, int r) {
if (l > r) return {1e18, 0};
pii ret = {1e18, 0};
for (l += N - 1, r += N + 1; l ^ r ^ 1; l >>= 1, r >>= 1) {
if (~l & 1) ret = std::min(ret, mi[l ^ 1]);
if (r & 1) ret = std::min(ret, mi[r ^ 1]);
}
return ret;
}
} sgt;
void prework() {
cnt[0] = cnt[1] = now[0] = now[1] = 0;
for (int o = 0; o < 2; ++o) {
std::set<int> st;
v[o].clear();
// std::sort(vec[o].begin(), vec[o].end());
for (auto [t, id, op] : vec[o])
if (op == 1)
st.emplace(id);
cnt[o] = st.size();
for (auto [t, id, op] : vec[o]) {
if (!st.count(id)) continue;
if (!op) now[o] += p;
else now[o] += t, st.erase(id), v[o].emplace_back(t);
}
}
}
void discrete() {
m = 0;
for (auto x : v[0]) unq[++m] = x;
for (auto x : v[1]) unq[++m] = x;
unq[++m] = 0; unq[++m] = 1e13;
std::sort(unq + 1, unq + 1 + m);
m = std::unique(unq + 1, unq + 1 + m) - (unq + 1);
unq[m + 1] = 1e14;
}
int getsum(int o, int x) {
if (x < 0) return 0;
else return sum[o][x];
}
pii getfunc(int x, int p) {
return {p * seg[x].first + seg[x].second, p};
}
pii getmi(int x, int l, int r) {
l = std::max<int>(l, 0);
if (l > r) return {1e18, 0};
return std::min(getfunc(x, l), getfunc(x, r));
}
pii getmx(int x, int l, int r) {
l = std::max<int>(l, 0);
if (l > r) return {-1e18, 0};
return std::max(getfunc(x, l), getfunc(x, r));
}
int getfunc(int x) {
int i = std::lower_bound(unq + 1, unq + 1 + m, x) - unq - 1;
if (!i) ++i;
// std::cerr << x << ' ' << unq[i] << ' ' << unq[i + 1] << '\n';
assert(i < m);
assert(unq[i] <= x && x <= unq[i + 1]);
return x * seg[i].first + seg[i].second;
}
int _getfunc(int x) {
int ret = 0;
for (int o = 0; o < 2; ++o) {
int sum = 0;
for (auto t : v[o]) sum += std::min(x, t);
if (o == 0) ret += sum;
else ret -= sum;
}
return ret;
}
void getseg() {
for (int o = 0; o < 2; ++o) {
int s = 0;
sum[o].clear();
for (int i = 0; i < v[o].size(); ++i)
sum[o].emplace_back(s += v[o][i]);
}
for (int i = 1; i < m; ++i) {
int p1 = std::lower_bound(v[0].begin(), v[0].end(), unq[i + 1]) - v[0].begin();
int p2 = std::lower_bound(v[1].begin(), v[1].end(), unq[i + 1]) - v[1].begin();
seg[i] = {v[0].size() - p1 - (v[1].size() - p2), getsum(0, p1 - 1) - getsum(1, p2 - 1)};
mi[i] = getmi(i, unq[i], unq[i + 1]);
mx[i] = getmx(i, unq[i], unq[i + 1]);
}
}
pii getpr(int x) {
for (int i = 1, j = 1; i <= m - 1; ++i) {
// int j = std::upper_bound(unq + 1, unq + 1 + m, unq[i] + x) - unq - 1;
for (; unq[j] <= unq[i] + x; ++j) {}
--j;
int now = getfunc(unq[i]);
auto p = sgt.querymax(i, j - 1);
if (p.first - now >= d) return {unq[i], p.second};
p = getmx(j, unq[j], unq[i] + x);
if (p.first - now >= d) return {unq[i], p.second};
}
for (int i = m, j = m; i > 1; --i) {
// int j = std::lower_bound(unq + 1, unq + 1 + m, std::max<int>(unq[i] - x, 0)) - unq;
for (; j > 1 && unq[j - 1] >= std::max<int>(unq[i] - x, 0); --j) {}
int now = getfunc(unq[i]);
auto p = sgt.querymin(j, i - 1);
if (now - p.first >= d) return {p.second, unq[i]};
p = getmi(j - 1, std::max<int>(unq[i] - x, 0), unq[j]);
if (now - p.first >= d) return {p.second, unq[i]};
}
return {-1, -1};
}
bool check(int x) {
return getpr(x).first != -1;
}
int cei(int x, int y) {
if (x < 0) return -((-x) / y);
else return (x + y - 1) / y;
}
int flr(int x, int y) {
if (x < 0) return -((-x + y - 1) / y);
else return x / y;
}
pii getpp(pii p, int d) {
// x * p.first + p.second >= d
int tmp = d - p.second;
// x * p.first >= tmp
if (p.first == 0) return tmp <= 0 ? pii{0, 1e18} : pii{1e18, 1e18};
else if (p.first > 0) return {cei(tmp, p.first), 1e18};
else return {0, flr(-tmp, -p.first)};
}
pii calc(int i, int j, int len) {
assert(j < m);
int l = std::max(unq[j], unq[i - 1] + len), r = std::min(unq[j + 1], unq[i] + len);
if (l > r) return {1e18, 1e18};
pii p = {seg[j].first - seg[i - 1].first, seg[j].second - seg[i - 1].second + len * seg[i - 1].first};
auto pp = getpp(p, d);
if (std::max(l, pp.first) <= std::min(r, pp.second)) return {std::max(l, pp.first) - len, std::max(l, pp.first)};
else return {1e18, 1e18};
// for (int i = l; i <= r; ++i)
// if (i * p.first + p.second >= d)
// return {i - len, i};
}
pii getans() {
// if (fir == 202567778970ll) std::cout << m << ' ' << unq[2] << ' ' << _getfunc(879492417995ll) - _getfunc(202567778970ll) << ' ' << d << '\n';
// int L = 0, R = 1e12 + 1, res = 0;
// while (L + 1 < R) {
// int mid = (L + R) >> 1;
// if (check(mid)) R = res = mid;
// else L = mid;
// }
int res = 0;
for (int i = 1; i <= m; ++i) {
int L = i, R = m + 1, rr = m + 1;
int now = getfunc(unq[i]);
while (L + 1 < R) {
int mid = (L + R) >> 1;
if (sgt.querymax(i, mid - 1).first - now >= d) R = rr = mid;
else L = mid;
}
if (rr != m + 1) {
auto pp = getpp(seg[rr - 1], now + d);
if (std::max(unq[rr - 1], pp.first) <= std::min(unq[rr], pp.second)) {
int val = std::max(unq[rr - 1], pp.first);
// std::cerr << val << '\n';
if (!res) res = val - unq[i];
else res = std::min(res, val - unq[i]);
}
}
}
for (int i = 1; i <= m; ++i) {
int L = 0, R = i, rr = 0;
int now = getfunc(unq[i]);
while (L + 1 < R) {
int mid = (L + R) >> 1;
if (now - sgt.querymin(mid, i - 1).first >= d) L = rr = mid;
else R = mid;
}
if (rr != 0) {
auto pp = getpp(pii{-seg[rr].first, -seg[rr].second}, -(now - d));
if (std::max(unq[rr], pp.first) <= std::min(unq[rr + 1], pp.second)) {
int val = std::min(unq[rr + 1], pp.second);
// std::cerr << val << '\n';
if (!res) res = unq[i] - val;
else res = std::min(res, unq[i] - val);
}
}
}
std::cerr << res << '\n';
// if (p == 862246722332ll) std::cout << "heige " << 1.0 * clock() / CLOCKS_PER_SEC << "s\n";
if (!res) return {-1, -1};
pii ret = {1e18, 1e18};
for (int i = 2; i < m; ++i) {
int l, r;
r = std::upper_bound(unq + 1, unq + 1 + m, unq[i] + res) - unq - 1;
l = std::lower_bound(unq + 1, unq + 1 + m, unq[i - 1] + res) - unq - 1;
l = std::max(l, i);
for (int j = l; j <= r; ++j) ret = std::min(ret, calc(i, j, res));
}
return ret;
}
bool fl = 1;
void dickdreamer() {
++cs;
std::cin >> n >> p;
vec[0].clear(), vec[1].clear();
for (int i = 1; i <= n; ++i) {
int c, t, id, op;
std::cin >> c >> id >> t >> op;
vec[c - 1].emplace_back(t, id, op);
if (i == 1) fir = t;
}
prework(), discrete();
if (cnt[0] != cnt[1]) return void(std::cout << "-1\n");
if (now[0] > now[1]) d = now[0] - now[1];
else d = now[1] - now[0] + 1, std::swap(now[0], now[1]), v[0].swap(v[1]), vec[0].swap(vec[1]);
getseg();
// if (fl && cs == 6) assert(std::count(unq + 1, unq + 1 + m, 66660446969ll) || std::count(unq + 1, unq + 1 + m, 904724933033ll));
sgt.build(m);
auto res = getans();
if (res.first == -1) std::cout << "-1\n";
else std::cout << res.first << ' ' << res.second << '\n';
}
int32_t main() {
#ifdef ORZXKR
freopen("in.txt", "r", stdin);
freopen("out.txt", "w", stdout);
#endif
std::ios::sync_with_stdio(0), std::cin.tie(0), std::cout.tie(0);
int T = 1;
std::cin >> T;
fl &= (T == 10000);
while (T--) dickdreamer();
// std::cerr << 1.0 * clock() / CLOCKS_PER_SEC << "s\n";
return 0;
}
这程序好像有点Bug,我给组数据试试?
詳細信息
Test #1:
score: 100
Accepted
time: 3ms
memory: 59748kb
input:
2 6 20 1 1 60 0 2 2 60 0 2 2 120 1 1 2 180 1 1 2 180 0 2 2 300 1 2 20 1 1 300 1 2 2 300 1
output:
120 160 -1
result:
ok 3 number(s): "120 160 -1"
Test #2:
score: 0
Accepted
time: 255ms
memory: 60680kb
input:
400000 1 1 1 1000000000 1000000000000 1 1 1 2 1000000000 1 0 1 1 2 1 1000000000000 1 1 1 1 1 1000000000000 1 1 1 2 1000000000 1000000000000 0 1 1 2 1 1 0 1 1000000000000 2 1000000000 1 0 1 1000000000000 1 1 1 0 1 1000000000000 1 1 1 1 1 1000000000000 2 1000000000 1000000000000 0 1 1 1 1000000000 1 0...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 ...
result:
ok 400000 numbers
Test #3:
score: 0
Accepted
time: 108ms
memory: 60228kb
input:
10000 4 542575683220 2 101300788 7308006925 1 1 604560531 257884671293 0 1 46911674 422781533607 0 2 10550533 771273976896 1 116 793781361888 1 819065134 15224463201 1 2 552573547 15992997563 1 2 424217 27032314690 0 2 70252887 41541882886 0 2 274093456 46129251985 0 1 458919850 46344406806 1 1 8416...
output:
-1 -1 -1 -1 -1 66660446969 904724933033 -1 -1 -1 -1 -1 -1 37226106549 311799565893 -1 -1 -1 -1 -1 -1 48301734080 375528816957 -1 -1 -1 459021288402 632610827258 -1 -1 -1 -1 -1 -1 -1 688320095661 898231263806 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 21800224424...
result:
ok 10846 numbers
Test #4:
score: 0
Accepted
time: 112ms
memory: 60200kb
input:
1000 41 699991536758 1 846433454 45030190307 1 2 882516075 48235731920 1 1 488580715 68600854082 1 2 467682948 92731902940 1 1 218024396 138543808852 1 2 124969525 150196554430 0 2 989301314 181283691649 1 2 752581868 202920989593 0 2 164838619 269703109427 0 1 696316428 295229433897 0 2 711333918 3...
output:
329739379675 908226682656 -1 -1 -1 -1 -1 424620801981 831021050071 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 6963797897 888755778656 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 568768655870 677350535270 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 ...
result:
ok 1042 numbers
Test #5:
score: 0
Accepted
time: 136ms
memory: 57000kb
input:
100 5622 365182448552 2 639763453 293138584 0 1 150269480 461335412 1 1 215320018 935778069 1 2 455090474 986867198 1 2 137209887 1025838937 1 1 639542200 1323284104 0 2 975624632 1331236944 1 1 419729668 1535875032 0 1 754484749 1638561677 1 2 718600604 2047704086 0 2 793817561 2082808091 1 2 89416...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
result:
ok 100 numbers
Test #6:
score: 0
Accepted
time: 150ms
memory: 59340kb
input:
10 17647 497735816936 2 674642608 86555331 1 1 362561577 201254993 1 2 311798376 317505931 0 1 997152835 354905086 0 1 501042015 406191428 1 2 346791377 498440233 0 2 883536093 569248570 0 1 242082992 714310537 1 1 149897006 726750432 1 2 951017299 800159980 0 2 258554143 816615965 0 1 681430878 825...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1
result:
ok 10 numbers
Test #7:
score: 0
Accepted
time: 221ms
memory: 74228kb
input:
1 400000 263629556026 2 954826535 1576313 1 1 970048058 1644473 1 1 100070583 1779363 0 1 862973854 2602197 0 1 544583759 6163089 1 1 292939527 13244435 1 1 818324382 16877678 1 1 255969879 32429661 0 1 578761398 33091132 1 2 337038014 34601245 0 1 46604309 39135309 0 2 501363911 40833345 1 1 210491...
output:
-1
result:
ok 1 number(s): "-1"
Test #8:
score: 0
Accepted
time: 1293ms
memory: 97024kb
input:
1 399863 925298013757 2 100628989 1 0 2 879908544 1 0 2 835150000 1 0 2 965097317 1 0 2 806475166 1 0 2 883153545 1 0 2 537871549 1 0 2 666240466 1 0 2 772690810 1 0 2 468000116 1 0 2 57197741 1 0 2 752910244 1 0 2 34579873 1 0 2 764798890 1 0 2 385606621 1 0 2 359331506 1 0 2 280339733 1 0 2 485810...
output:
93600917303 93601131398
result:
ok 2 number(s): "93600917303 93601131398"
Test #9:
score: 0
Accepted
time: 1283ms
memory: 96980kb
input:
1 399494 961261170252 1 500382911 1 0 1 343020544 1 0 1 754347645 1 0 1 333064084 1 0 1 478385269 1 0 1 622968098 1 0 1 980169601 1 0 1 352209103 1 0 1 402748538 1 0 1 218430474 1 0 1 288936411 1 0 1 5773706 1 0 1 698161932 1 0 1 366209929 1 0 1 73511871 1 0 1 725720796 1 0 1 888663191 1 0 1 3011404...
output:
93601000787 93601218921
result:
ok 2 number(s): "93601000787 93601218921"
Test #10:
score: 0
Accepted
time: 79ms
memory: 73744kb
input:
1 400000 663010 1 680238422 483214 0 1 680238422 521442 0 1 680238422 609593 0 1 680238422 1476058 0 1 680238422 2424603 0 1 680238422 2483379 0 1 680238422 2777054 0 1 680238422 3992033 0 1 680238422 4038346 0 1 680238422 4500144 0 1 680238422 4613302 0 1 680238422 4698260 0 1 680238422 4860707 0 1...
output:
-1
result:
ok 1 number(s): "-1"
Test #11:
score: 0
Accepted
time: 70ms
memory: 69676kb
input:
1 400000 79784 1 110051200 202567778970 0 1 110051200 202567778970 0 1 110051200 202567778970 0 1 110051200 202567778970 0 1 110051200 202567778970 0 1 110051200 202567778970 0 1 110051200 202567778970 0 1 110051200 202567778970 0 1 110051200 202567778970 0 1 110051200 202567778970 0 1 110051200 202...
output:
202567778970 879492417995
result:
ok 2 number(s): "202567778970 879492417995"
Test #12:
score: 0
Accepted
time: 85ms
memory: 70804kb
input:
1 400000 48790 1 554756625 480690 0 1 554756625 3230620 0 1 554756625 3409127 0 1 514075804 3753536 0 1 554756625 4724772 0 2 188054527 5311431 0 1 100903989 5807895 0 1 933163205 7291004 0 2 382472190 8139517 0 1 239315307 8310712 0 1 554756625 8348744 0 1 14438382 8939856 0 1 554756625 11989642 0 ...
output:
13251717318 599133935039
result:
ok 2 number(s): "13251717318 599133935039"
Test #13:
score: 0
Accepted
time: 72ms
memory: 72352kb
input:
1 400000 255041 2 181766528 25787236213 0 2 181766528 25787236213 0 2 181766528 25787236213 0 2 181766528 25787236213 0 2 181766528 25787236213 0 2 181766528 25787236213 0 2 181766528 25787236213 0 2 181766528 25787236213 0 2 181766528 25787236213 0 2 181766528 25787236213 0 2 181766528 25787236213 ...
output:
306238410801 624516496355
result:
ok 2 number(s): "306238410801 624516496355"
Test #14:
score: 0
Accepted
time: 84ms
memory: 71768kb
input:
1 400000 952892 1 669079782 5249 0 1 669079782 1051034 0 1 669079782 1478798 0 1 643031526 2194715 0 1 669079782 2318113 0 2 195012273 3054972 0 2 608030266 3674227 0 1 927916867 3904831 0 1 669079782 4349111 0 2 214184786 6595409 0 1 669079782 6663358 0 2 403805672 6933063 0 1 669079782 7146955 0 2...
output:
13932447919 987373706861
result:
ok 2 number(s): "13932447919 987373706861"
Test #15:
score: 0
Accepted
time: 74ms
memory: 72036kb
input:
1 400000 445351 2 43725609 629636445 0 2 43725609 629636445 0 2 43725609 629636445 0 2 43725609 629636445 0 2 43725609 629636445 0 2 43725609 629636445 0 2 43725609 629636445 0 2 43725609 629636445 0 2 43725609 629636445 0 2 43725609 629636445 0 2 43725609 629636445 0 2 43725609 629636445 0 2 437256...
output:
-1
result:
ok 1 number(s): "-1"
Test #16:
score: 0
Accepted
time: 89ms
memory: 69892kb
input:
1 400000 737917 2 104548428 355151 0 2 798447330 563764 0 2 807313778 726293 0 1 225967449 777825 0 1 76979820 830949 0 2 798447330 1204358 0 1 152843063 1242227 0 1 147816717 1604061 0 2 884732354 2045708 0 1 899307173 2280899 0 1 923713510 2447044 0 2 807313778 2651301 0 2 148086652 2704087 0 2 79...
output:
294972586721 744194775850
result:
ok 2 number(s): "294972586721 744194775850"
Test #17:
score: 0
Accepted
time: 75ms
memory: 72048kb
input:
1 400000 797979 1 698025121 76252326 0 1 698025121 76252326 0 1 698025121 76252326 0 1 698025121 76252326 0 1 698025121 76252326 0 1 698025121 76252326 0 1 698025121 76252326 0 1 698025121 76252326 0 1 698025121 76252326 0 1 698025121 76252326 0 1 698025121 76252326 0 1 698025121 76252326 0 1 698025...
output:
297321818946 857889105465
result:
ok 2 number(s): "297321818946 857889105465"
Test #18:
score: 0
Accepted
time: 205ms
memory: 74144kb
input:
1 400000 559759 1 334035078 470519 0 1 768140446 2967944 0 1 77040897 3088991 0 2 493261355 4283608 0 2 914055376 4561618 0 1 249929265 5223548 0 1 471764388 5364482 0 1 438202587 6820774 0 1 548072976 7173586 0 1 152064110 7904320 0 2 187798068 9277616 0 2 554380228 11571775 0 2 999624048 11848525 ...
output:
368607061812 459867556579
result:
ok 2 number(s): "368607061812 459867556579"
Test #19:
score: 0
Accepted
time: 189ms
memory: 71724kb
input:
1 400000 923129 1 830682125 6777784 0 1 830682125 6777784 0 1 830682125 6777784 0 1 830682125 6777784 1 1 830682125 6777784 0 1 830682125 6777784 0 1 830682125 6777784 0 2 502376403 98306211 0 2 502376403 98306211 0 2 502376403 98306211 0 2 502376403 98306211 0 2 502376403 98306211 0 2 502376403 983...
output:
603264713406 904051411073
result:
ok 2 number(s): "603264713406 904051411073"
Test #20:
score: 0
Accepted
time: 345ms
memory: 60000kb
input:
10000 34 713414155711 1 353899840 4470478880 1 1 101300788 14617874162 1 2 224463201 46129251985 1 2 997067155 53850132914 1 1 493411629 67237771644 1 2 60685412 153612550178 1 2 932182989 159471048139 1 2 821881991 174028196456 1 2 887385900 188331357182 1 2 819065134 200111294061 1 2 348545253 247...
output:
483871970490 840598269617 196200037892 970964066001 283567194848 914830957817 -1 -1 224079150450 800412473197 100330184885 227585151128 50506210564 783882723066 406628103960 924434625801 634770465011 738356832148 16323343084 723566375795 28913275304 938587397050 -1 461193028837 931629993981 36470471...
result:
ok 18515 numbers
Test #21:
score: 0
Accepted
time: 542ms
memory: 61460kb
input:
1000 60 171285665612 1 202084572 21122606424 1 2 658066585 35408059059 1 1 23311972 51059588296 1 1 555006790 53867325184 1 2 668895851 61404100899 1 2 439334198 66467682948 1 2 814813731 75505419882 1 2 563694648 84052137524 1 1 863531125 84160720592 1 2 666879230 92731902940 1 1 310726910 12688787...
output:
200468370512 983989301314 105910501928 853497904904 928492782007 939126373321 342619682920 456502006066 282459092744 713342359655 99203627100 110822178667 496813497898 828241040007 5149945202 998323717204 20989066921 948454205300 353986139415 989439227450 134191973984 722450971884 64821218433 932293...
result:
ok 1942 numbers
Test #22:
score: 0
Accepted
time: 781ms
memory: 62100kb
input:
100 302 495480207413 1 157557196 5191700656 1 2 688131848 7822346081 1 2 302959585 11342249961 1 2 667487485 12602857386 1 1 981368818 14235797064 1 2 862638974 15778895657 1 2 938801239 16033062185 1 2 141565804 18783237506 1 2 600109241 21882439145 1 1 866713826 23983150467 1 2 17855262 2555711801...
output:
12878839367 465356894994 98670299607 984006430918 659460612429 921298289091 261717617158 758562225078 16656906317 946242259897 604865303455 742610447485 65635714807 979156099520 414255260549 900331635889 86571338038 510051964019 302298934987 885584590000 15514653060 928519135170 11536475812 99954734...
result:
ok 197 numbers
Test #23:
score: 0
Accepted
time: 1081ms
memory: 74696kb
input:
10 69720 312974804124 1 375110834 3284756 1 2 958035607 5372989 1 1 96816917 5896324 1 1 659349114 23601583 1 1 123026525 45334114 1 2 810136368 59250875 1 2 382704738 59429789 1 1 397855561 69769833 1 2 194473720 85533928 1 1 41349414 87337444 1 1 854195287 89285949 1 2 208588652 102226384 1 2 8322...
output:
192359142508 690359228247 4301019212 770771226671 59321270708 972659014596 34895107242 342872704017 43369717825 828295749790 281202583338 607302423053 105982895679 805855161263 12072175115 993484291384 114227155230 666678426833 136839246084 981181564986
result:
ok 20 numbers
Test #24:
score: 0
Accepted
time: 1471ms
memory: 98008kb
input:
1 400000 862246722332 1 879284128 1644473 1 1 566310427 2602197 1 1 305759998 3635844 1 2 306032716 11995694 1 2 389513871 14509476 1 2 761692038 14593427 1 2 924522024 17673793 1 1 604735028 18750462 1 2 312343123 19169330 1 1 37783135 19583722 1 2 765576144 19935364 1 1 508498315 23251498 1 2 3123...
output:
511340089351 555367600772
result:
ok 2 number(s): "511340089351 555367600772"
Test #25:
score: 0
Accepted
time: 1476ms
memory: 99676kb
input:
1 400000 601546500618 1 193617644 437488 1 1 687635851 1161220 1 1 867854270 3644275 1 2 75321946 7668994 1 2 19512874 8264014 1 2 2373384 11375302 1 2 167691473 17921764 1 1 837478720 23661825 1 1 319362132 27535622 1 2 9492126 28282384 1 2 21937131 28442718 1 1 284421469 28539626 1 1 313762592 307...
output:
212927310768 944532983806
result:
ok 2 number(s): "212927310768 944532983806"
Test #26:
score: 0
Accepted
time: 313ms
memory: 60060kb
input:
10000 59 10000000000 2 38224116 294735 0 1 791184194 294735 1 2 38224116 1963991 1 1 46743924 2052699 1 1 555377382 3945603 1 2 686459062 3952976 1 2 905596132 7512134 1 2 420873888 8587106 1 1 586803310 8596700 1 1 755231195 12584511 1 1 403524468 17231015 1 1 460174100 23414884 1 2 115239866 25206...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 ...
result:
ok 13652 numbers
Test #27:
score: 0
Accepted
time: 516ms
memory: 60748kb
input:
1000 99 10000000000 2 307832277 78148 0 2 307832277 78148 1 1 275518058 2292869 1 2 318752188 3421425 1 1 538132005 4313972 1 2 559436916 4729882 1 2 97509167 4815124 1 2 154178279 4851744 1 2 567062651 6312029 1 2 665106524 7115329 1 2 715927148 8744720 1 1 502131755 9331956 1 2 809734156 9420053 1...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 ...
result:
ok 1468 numbers
Test #28:
score: 0
Accepted
time: 791ms
memory: 64888kb
input:
100 10051 10000000000 2 139050006 1151 0 2 139050006 1151 1 1 500313852 6700 1 2 681995605 9186 1 1 270810606 22090 1 1 995827512 24954 1 1 53631098 30759 1 1 399843074 46446 1 2 126028509 48532 1 1 981492639 53805 1 2 702955098 123192 1 1 795346040 129998 1 2 556795597 151390 1 1 989719151 160084 1...
output:
-1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 182168532 694021729 -1 -1 -1 -1 577259203 783733321 -1 -1 -1 671704640 925928203 -1 -1 -1 -1 -1 138312166 436590105 -1 130000444 166930180 1796852385 5828587855 3700769434 7831971589 5341012067 6770347121 -1 924292593 5310349577 11307...
result:
ok 154 numbers
Test #29:
score: 0
Accepted
time: 1113ms
memory: 75884kb
input:
10 128435 10000000000 2 650210546 297 0 2 650210546 297 1 1 614257067 1396 1 2 303092138 3047 1 1 571581225 3700 1 2 385229129 4100 1 1 445435100 4835 1 2 193655129 6197 1 2 153784571 7701 1 1 104200814 10218 1 1 60272333 10546 1 1 633189238 11303 1 1 100743505 11632 1 1 402614614 11726 1 2 6587875 ...
output:
-1 -1 -1 -1 5027602745 7828469284 809575451 2243952975 50008876934 92680594103 68404371711 98198887855 599544816032 676768101584 32564552152 866063397702
result:
ok 16 numbers
Test #30:
score: 0
Accepted
time: 1420ms
memory: 97336kb
input:
1 399999 10000000000 2 233850926 90 0 1 748456332 90 1 1 213487336 626 1 1 157311336 716 1 1 28947387 765 1 1 424478786 1436 1 1 548164753 1638 1 1 431903000 1949 1 2 233850926 2028 1 2 716019297 2086 1 2 275417128 2176 1 2 289866313 2231 1 2 275427198 2822 1 2 749995741 2921 1 1 874030515 3547 1 2 ...
output:
-1
result:
ok 1 number(s): "-1"
Test #31:
score: 0
Accepted
time: 1435ms
memory: 97400kb
input:
1 399999 10000000000 1 326385488 311 0 1 326385488 311 1 1 203877106 1099 1 2 644432124 1199 1 2 127852006 1290 1 2 407011871 1404 1 1 167030010 1854 1 1 704974376 2001 1 2 176461067 2510 1 2 528064718 2688 1 2 558130105 2947 1 2 472257639 3212 1 1 17497002 3607 1 1 887225470 3609 1 1 885238663 3997...
output:
47241340 63768254
result:
ok 2 number(s): "47241340 63768254"
Test #32:
score: 0
Accepted
time: 1408ms
memory: 97364kb
input:
1 399999 10000000000 2 720746168 2538 0 1 389889266 2538 1 1 846649225 3346 1 2 720746168 6867 1 2 220578380 8319 1 2 478006698 14785 1 1 543403305 15269 1 1 994117268 17197 1 1 244609566 17573 1 1 186393243 18023 1 1 429534436 19900 1 1 831875453 21942 1 2 708904325 22934 1 2 674347985 25188 1 1 89...
output:
63929246 848919318
result:
ok 2 number(s): "63929246 848919318"
Test #33:
score: 0
Accepted
time: 1436ms
memory: 99008kb
input:
1 399999 10000000000 1 708135129 3777 0 1 708135129 3777 1 2 378842907 12099 1 2 491334572 15760 1 2 57000817 22432 1 2 107356454 24206 1 1 355006013 25808 1 1 215578462 26957 1 1 915491561 27307 1 2 955971633 39399 1 2 609588029 44169 1 2 842497351 48865 1 1 617427596 53607 1 2 398484603 54969 1 2 ...
output:
27037798 925795917
result:
ok 2 number(s): "27037798 925795917"
Test #34:
score: 0
Accepted
time: 1444ms
memory: 100176kb
input:
1 399999 10000000000 2 85635799 55054 0 2 85635799 55054 1 1 280335848 174979 1 2 939318300 209001 1 2 894465429 284645 1 2 618497444 297291 1 2 965916461 360005 1 1 974758958 400989 1 1 764253644 422154 1 2 15313245 481707 1 2 663242137 493111 1 1 798251629 520714 1 1 578532763 538498 1 2 468635252...
output:
996300115 8421496745
result:
ok 2 number(s): "996300115 8421496745"
Test #35:
score: 0
Accepted
time: 1450ms
memory: 98052kb
input:
1 399999 10000000000 1 419779110 42873 0 2 809879504 42873 1 2 969885028 63945 1 1 419779110 78559 1 2 833465970 114507 1 1 575954552 137275 1 2 845350982 144299 1 1 829415866 177492 1 2 377975311 191331 1 2 543827092 388125 1 2 954840061 429840 1 1 234193563 430657 1 2 814992278 519061 1 2 13492113...
output:
3348662196 5187741015
result:
ok 2 number(s): "3348662196 5187741015"
Test #36:
score: 0
Accepted
time: 1451ms
memory: 99024kb
input:
1 399999 10000000000 2 53438133 376125 0 2 53438133 376125 1 2 987743109 395850 1 1 166707936 441017 1 2 740702438 626572 1 2 254475979 650308 1 2 327881470 975326 1 1 519757004 1146648 1 1 745882219 1449930 1 1 704933732 1504462 1 1 567410879 1660559 1 1 501447393 2155145 1 1 217253545 2205303 1 2 ...
output:
75248596220 96080897908
result:
ok 2 number(s): "75248596220 96080897908"
Test #37:
score: 0
Accepted
time: 1399ms
memory: 98252kb
input:
1 399999 10000000000 1 490359113 409073 0 2 635603234 409073 1 1 490359113 582604 1 1 466100352 1806496 1 1 851462909 2072668 1 2 835324462 2096985 1 1 306968106 2569687 1 2 843905600 2624494 1 1 421262349 2841982 1 2 566061630 3227185 1 1 840367098 3398146 1 1 755106699 3440275 1 1 893965367 398535...
output:
-1
result:
ok 1 number(s): "-1"
Test #38:
score: 0
Accepted
time: 1442ms
memory: 97396kb
input:
1 399999 10000000000 2 108713408 355367 0 1 495440048 355367 1 2 108713408 5246476 1 1 829460048 18527254 1 2 643329162 19258328 1 2 889222716 22102287 1 2 408057726 26361813 1 2 793626956 26469500 1 2 138076520 29441704 1 1 91238764 31551010 1 2 871893174 31820730 1 1 668770819 34779933 1 1 8155239...
output:
326517728008 374248053587
result:
ok 2 number(s): "326517728008 374248053587"
Test #39:
score: 0
Accepted
time: 1473ms
memory: 100340kb
input:
1 399999 10000000000 1 107735064 1466866 0 2 435376868 1466866 1 1 107735064 4168250 1 1 514024463 6140405 1 2 743983631 11245466 1 1 806314530 15082970 1 1 785572414 15407736 1 1 210419929 17442417 1 2 614548459 17450482 1 1 82717421 17736378 1 2 747895352 19709129 1 2 512995307 20474608 1 1 917777...
output:
24033093497 889551871011
result:
ok 2 number(s): "24033093497 889551871011"
Extra Test:
score: 0
Extra Test Passed