QOJ.ac
QOJ
ID | Problem | Submitter | Result | Time | Memory | Language | File size | Submit time | Judge time |
---|---|---|---|---|---|---|---|---|---|
#802418 | #9868. GCD | ucup-team087# | AC ✓ | 2ms | 5100kb | C++23 | 15.9kb | 2024-12-07 13:40:13 | 2024-12-07 13:40:19 |
Judging History
answer
#line 1 "library/my_template.hpp"
#if defined(LOCAL)
#include <my_template_compiled.hpp>
#else
// https://codeforces.com/blog/entry/96344
#pragma GCC optimize("Ofast,unroll-loops")
// いまの CF だとこれ入れると動かない?
// #pragma GCC target("avx2,popcnt")
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using u8 = uint8_t;
using u16 = uint16_t;
using u32 = uint32_t;
using u64 = uint64_t;
using i128 = __int128;
using u128 = unsigned __int128;
using f128 = __float128;
template <class T>
constexpr T infty = 0;
template <>
constexpr int infty<int> = 1'010'000'000;
template <>
constexpr ll infty<ll> = 2'020'000'000'000'000'000;
template <>
constexpr u32 infty<u32> = infty<int>;
template <>
constexpr u64 infty<u64> = infty<ll>;
template <>
constexpr i128 infty<i128> = i128(infty<ll>) * 2'000'000'000'000'000'000;
template <>
constexpr double infty<double> = infty<ll>;
template <>
constexpr long double infty<long double> = infty<ll>;
using pi = pair<ll, ll>;
using vi = vector<ll>;
template <class T>
using vc = vector<T>;
template <class T>
using vvc = vector<vc<T>>;
template <class T>
using vvvc = vector<vvc<T>>;
template <class T>
using vvvvc = vector<vvvc<T>>;
template <class T>
using vvvvvc = vector<vvvvc<T>>;
template <class T>
using pq = priority_queue<T>;
template <class T>
using pqg = priority_queue<T, vector<T>, greater<T>>;
#define vv(type, name, h, ...) vector<vector<type>> name(h, vector<type>(__VA_ARGS__))
#define vvv(type, name, h, w, ...) vector<vector<vector<type>>> name(h, vector<vector<type>>(w, vector<type>(__VA_ARGS__)))
#define vvvv(type, name, a, b, c, ...) \
vector<vector<vector<vector<type>>>> name(a, vector<vector<vector<type>>>(b, vector<vector<type>>(c, vector<type>(__VA_ARGS__))))
// https://trap.jp/post/1224/
#define FOR1(a) for (ll _ = 0; _ < ll(a); ++_)
#define FOR2(i, a) for (ll i = 0; i < ll(a); ++i)
#define FOR3(i, a, b) for (ll i = a; i < ll(b); ++i)
#define FOR4(i, a, b, c) for (ll i = a; i < ll(b); i += (c))
#define FOR1_R(a) for (ll i = (a)-1; i >= ll(0); --i)
#define FOR2_R(i, a) for (ll i = (a)-1; i >= ll(0); --i)
#define FOR3_R(i, a, b) for (ll i = (b)-1; i >= ll(a); --i)
#define overload4(a, b, c, d, e, ...) e
#define overload3(a, b, c, d, ...) d
#define FOR(...) overload4(__VA_ARGS__, FOR4, FOR3, FOR2, FOR1)(__VA_ARGS__)
#define FOR_R(...) overload3(__VA_ARGS__, FOR3_R, FOR2_R, FOR1_R)(__VA_ARGS__)
#define FOR_subset(t, s) for (ll t = (s); t >= 0; t = (t == 0 ? -1 : (t - 1) & (s)))
#define all(x) x.begin(), x.end()
#define len(x) ll(x.size())
#define elif else if
#define eb emplace_back
#define mp make_pair
#define mt make_tuple
#define fi first
#define se second
#define stoi stoll
int popcnt(int x) { return __builtin_popcount(x); }
int popcnt(u32 x) { return __builtin_popcount(x); }
int popcnt(ll x) { return __builtin_popcountll(x); }
int popcnt(u64 x) { return __builtin_popcountll(x); }
int popcnt_sgn(int x) { return (__builtin_parity(x) & 1 ? -1 : 1); }
int popcnt_sgn(u32 x) { return (__builtin_parity(x) & 1 ? -1 : 1); }
int popcnt_sgn(ll x) { return (__builtin_parity(x) & 1 ? -1 : 1); }
int popcnt_sgn(u64 x) { return (__builtin_parity(x) & 1 ? -1 : 1); }
// (0, 1, 2, 3, 4) -> (-1, 0, 1, 1, 2)
int topbit(int x) { return (x == 0 ? -1 : 31 - __builtin_clz(x)); }
int topbit(u32 x) { return (x == 0 ? -1 : 31 - __builtin_clz(x)); }
int topbit(ll x) { return (x == 0 ? -1 : 63 - __builtin_clzll(x)); }
int topbit(u64 x) { return (x == 0 ? -1 : 63 - __builtin_clzll(x)); }
// (0, 1, 2, 3, 4) -> (-1, 0, 1, 0, 2)
int lowbit(int x) { return (x == 0 ? -1 : __builtin_ctz(x)); }
int lowbit(u32 x) { return (x == 0 ? -1 : __builtin_ctz(x)); }
int lowbit(ll x) { return (x == 0 ? -1 : __builtin_ctzll(x)); }
int lowbit(u64 x) { return (x == 0 ? -1 : __builtin_ctzll(x)); }
template <typename T>
T kth_bit(int k) {
return T(1) << k;
}
template <typename T>
bool has_kth_bit(T x, int k) {
return x >> k & 1;
}
template <typename T>
T floor(T a, T b) {
return a / b - (a % b && (a ^ b) < 0);
}
template <typename T>
T ceil(T x, T y) {
return floor(x + y - 1, y);
}
template <typename T>
T bmod(T x, T y) {
return x - y * floor(x, y);
}
template <typename T>
pair<T, T> divmod(T x, T y) {
T q = floor(x, y);
return {q, x - q * y};
}
template <typename T, typename U>
T SUM(const vector<U> &A) {
T sm = 0;
for (auto &&a: A) sm += a;
return sm;
}
#define MIN(v) *min_element(all(v))
#define MAX(v) *max_element(all(v))
#define LB(c, x) distance((c).begin(), lower_bound(all(c), (x)))
#define UB(c, x) distance((c).begin(), upper_bound(all(c), (x)))
#define UNIQUE(x) sort(all(x)), x.erase(unique(all(x)), x.end()), x.shrink_to_fit()
template <typename T>
T POP(deque<T> &que) {
T a = que.front();
que.pop_front();
return a;
}
template <typename T>
T POP(pq<T> &que) {
T a = que.top();
que.pop();
return a;
}
template <typename T>
T POP(pqg<T> &que) {
T a = que.top();
que.pop();
return a;
}
template <typename T>
T POP(vc<T> &que) {
T a = que.back();
que.pop_back();
return a;
}
template <typename F>
ll binary_search(F check, ll ok, ll ng, bool check_ok = true) {
if (check_ok) assert(check(ok));
while (abs(ok - ng) > 1) {
auto x = (ng + ok) / 2;
(check(x) ? ok : ng) = x;
}
return ok;
}
template <typename F>
double binary_search_real(F check, double ok, double ng, int iter = 100) {
FOR(iter) {
double x = (ok + ng) / 2;
(check(x) ? ok : ng) = x;
}
return (ok + ng) / 2;
}
template <class T, class S>
inline bool chmax(T &a, const S &b) {
return (a < b ? a = b, 1 : 0);
}
template <class T, class S>
inline bool chmin(T &a, const S &b) {
return (a > b ? a = b, 1 : 0);
}
// ? は -1
vc<int> s_to_vi(const string &S, char first_char) {
vc<int> A(S.size());
FOR(i, S.size()) { A[i] = (S[i] != '?' ? S[i] - first_char : -1); }
return A;
}
template <typename T, typename U>
vector<T> cumsum(vector<U> &A, int off = 1) {
int N = A.size();
vector<T> B(N + 1);
FOR(i, N) { B[i + 1] = B[i] + A[i]; }
if (off == 0) B.erase(B.begin());
return B;
}
// stable sort
template <typename T>
vector<int> argsort(const vector<T> &A) {
vector<int> ids(len(A));
iota(all(ids), 0);
sort(all(ids), [&](int i, int j) { return (A[i] == A[j] ? i < j : A[i] < A[j]); });
return ids;
}
// A[I[0]], A[I[1]], ...
template <typename T>
vc<T> rearrange(const vc<T> &A, const vc<int> &I) {
vc<T> B(len(I));
FOR(i, len(I)) B[i] = A[I[i]];
return B;
}
template <typename T, typename... Vectors>
void concat(vc<T> &first, const Vectors &... others) {
vc<T> &res = first;
(res.insert(res.end(), others.begin(), others.end()), ...);
}
#endif
#line 1 "library/other/io.hpp"
#define FASTIO
#include <unistd.h>
// https://judge.yosupo.jp/submission/21623
namespace fastio {
static constexpr uint32_t SZ = 1 << 17;
char ibuf[SZ];
char obuf[SZ];
char out[100];
// pointer of ibuf, obuf
uint32_t pil = 0, pir = 0, por = 0;
struct Pre {
char num[10000][4];
constexpr Pre() : num() {
for (int i = 0; i < 10000; i++) {
int n = i;
for (int j = 3; j >= 0; j--) {
num[i][j] = n % 10 | '0';
n /= 10;
}
}
}
} constexpr pre;
inline void load() {
memcpy(ibuf, ibuf + pil, pir - pil);
pir = pir - pil + fread(ibuf + pir - pil, 1, SZ - pir + pil, stdin);
pil = 0;
if (pir < SZ) ibuf[pir++] = '\n';
}
inline void flush() {
fwrite(obuf, 1, por, stdout);
por = 0;
}
void rd(char &c) {
do {
if (pil + 1 > pir) load();
c = ibuf[pil++];
} while (isspace(c));
}
void rd(string &x) {
x.clear();
char c;
do {
if (pil + 1 > pir) load();
c = ibuf[pil++];
} while (isspace(c));
do {
x += c;
if (pil == pir) load();
c = ibuf[pil++];
} while (!isspace(c));
}
template <typename T>
void rd_real(T &x) {
string s;
rd(s);
x = stod(s);
}
template <typename T>
void rd_integer(T &x) {
if (pil + 100 > pir) load();
char c;
do
c = ibuf[pil++];
while (c < '-');
bool minus = 0;
if constexpr (is_signed<T>::value || is_same_v<T, i128>) {
if (c == '-') { minus = 1, c = ibuf[pil++]; }
}
x = 0;
while ('0' <= c) { x = x * 10 + (c & 15), c = ibuf[pil++]; }
if constexpr (is_signed<T>::value || is_same_v<T, i128>) {
if (minus) x = -x;
}
}
void rd(int &x) { rd_integer(x); }
void rd(ll &x) { rd_integer(x); }
void rd(i128 &x) { rd_integer(x); }
void rd(u32 &x) { rd_integer(x); }
void rd(u64 &x) { rd_integer(x); }
void rd(u128 &x) { rd_integer(x); }
void rd(double &x) { rd_real(x); }
void rd(long double &x) { rd_real(x); }
void rd(f128 &x) { rd_real(x); }
template <class T, class U>
void rd(pair<T, U> &p) {
return rd(p.first), rd(p.second);
}
template <size_t N = 0, typename T>
void rd_tuple(T &t) {
if constexpr (N < std::tuple_size<T>::value) {
auto &x = std::get<N>(t);
rd(x);
rd_tuple<N + 1>(t);
}
}
template <class... T>
void rd(tuple<T...> &tpl) {
rd_tuple(tpl);
}
template <size_t N = 0, typename T>
void rd(array<T, N> &x) {
for (auto &d: x) rd(d);
}
template <class T>
void rd(vc<T> &x) {
for (auto &d: x) rd(d);
}
void read() {}
template <class H, class... T>
void read(H &h, T &... t) {
rd(h), read(t...);
}
void wt(const char c) {
if (por == SZ) flush();
obuf[por++] = c;
}
void wt(const string s) {
for (char c: s) wt(c);
}
void wt(const char *s) {
size_t len = strlen(s);
for (size_t i = 0; i < len; i++) wt(s[i]);
}
template <typename T>
void wt_integer(T x) {
if (por > SZ - 100) flush();
if (x < 0) { obuf[por++] = '-', x = -x; }
int outi;
for (outi = 96; x >= 10000; outi -= 4) {
memcpy(out + outi, pre.num[x % 10000], 4);
x /= 10000;
}
if (x >= 1000) {
memcpy(obuf + por, pre.num[x], 4);
por += 4;
} else if (x >= 100) {
memcpy(obuf + por, pre.num[x] + 1, 3);
por += 3;
} else if (x >= 10) {
int q = (x * 103) >> 10;
obuf[por] = q | '0';
obuf[por + 1] = (x - q * 10) | '0';
por += 2;
} else
obuf[por++] = x | '0';
memcpy(obuf + por, out + outi + 4, 96 - outi);
por += 96 - outi;
}
template <typename T>
void wt_real(T x) {
ostringstream oss;
oss << fixed << setprecision(15) << double(x);
string s = oss.str();
wt(s);
}
void wt(int x) { wt_integer(x); }
void wt(ll x) { wt_integer(x); }
void wt(i128 x) { wt_integer(x); }
void wt(u32 x) { wt_integer(x); }
void wt(u64 x) { wt_integer(x); }
void wt(u128 x) { wt_integer(x); }
void wt(double x) { wt_real(x); }
void wt(long double x) { wt_real(x); }
void wt(f128 x) { wt_real(x); }
template <class T, class U>
void wt(const pair<T, U> val) {
wt(val.first);
wt(' ');
wt(val.second);
}
template <size_t N = 0, typename T>
void wt_tuple(const T t) {
if constexpr (N < std::tuple_size<T>::value) {
if constexpr (N > 0) { wt(' '); }
const auto x = std::get<N>(t);
wt(x);
wt_tuple<N + 1>(t);
}
}
template <class... T>
void wt(tuple<T...> tpl) {
wt_tuple(tpl);
}
template <class T, size_t S>
void wt(const array<T, S> val) {
auto n = val.size();
for (size_t i = 0; i < n; i++) {
if (i) wt(' ');
wt(val[i]);
}
}
template <class T>
void wt(const vector<T> val) {
auto n = val.size();
for (size_t i = 0; i < n; i++) {
if (i) wt(' ');
wt(val[i]);
}
}
void print() { wt('\n'); }
template <class Head, class... Tail>
void print(Head &&head, Tail &&... tail) {
wt(head);
if (sizeof...(Tail)) wt(' ');
print(forward<Tail>(tail)...);
}
// gcc expansion. called automaticall after main.
void __attribute__((destructor)) _d() { flush(); }
} // namespace fastio
using fastio::read;
using fastio::print;
using fastio::flush;
#if defined(LOCAL)
#define SHOW(...) SHOW_IMPL(__VA_ARGS__, SHOW6, SHOW5, SHOW4, SHOW3, SHOW2, SHOW1)(__VA_ARGS__)
#define SHOW_IMPL(_1, _2, _3, _4, _5, _6, NAME, ...) NAME
#define SHOW1(x) print(#x, "=", (x)), flush()
#define SHOW2(x, y) print(#x, "=", (x), #y, "=", (y)), flush()
#define SHOW3(x, y, z) print(#x, "=", (x), #y, "=", (y), #z, "=", (z)), flush()
#define SHOW4(x, y, z, w) print(#x, "=", (x), #y, "=", (y), #z, "=", (z), #w, "=", (w)), flush()
#define SHOW5(x, y, z, w, v) print(#x, "=", (x), #y, "=", (y), #z, "=", (z), #w, "=", (w), #v, "=", (v)), flush()
#define SHOW6(x, y, z, w, v, u) print(#x, "=", (x), #y, "=", (y), #z, "=", (z), #w, "=", (w), #v, "=", (v), #u, "=", (u)), flush()
#else
#define SHOW(...)
#endif
#define INT(...) \
int __VA_ARGS__; \
read(__VA_ARGS__)
#define LL(...) \
ll __VA_ARGS__; \
read(__VA_ARGS__)
#define U32(...) \
u32 __VA_ARGS__; \
read(__VA_ARGS__)
#define U64(...) \
u64 __VA_ARGS__; \
read(__VA_ARGS__)
#define STR(...) \
string __VA_ARGS__; \
read(__VA_ARGS__)
#define CHAR(...) \
char __VA_ARGS__; \
read(__VA_ARGS__)
#define DBL(...) \
double __VA_ARGS__; \
read(__VA_ARGS__)
#define VEC(type, name, size) \
vector<type> name(size); \
read(name)
#define VV(type, name, h, w) \
vector<vector<type>> name(h, vector<type>(w)); \
read(name)
void YES(bool t = 1) { print(t ? "YES" : "NO"); }
void NO(bool t = 1) { YES(!t); }
void Yes(bool t = 1) { print(t ? "Yes" : "No"); }
void No(bool t = 1) { Yes(!t); }
void yes(bool t = 1) { print(t ? "yes" : "no"); }
void no(bool t = 1) { yes(!t); }
void YA(bool t = 1) { print(t ? "YA" : "TIDAK"); }
void TIDAK(bool t = 1) { YES(!t); }
#line 3 "main.cpp"
#line 2 "library/ds/hashmap.hpp"
// u64 -> Val
template <typename Val>
struct HashMap {
// n は入れたいものの個数で ok
HashMap(u32 n = 0) { build(n); }
void build(u32 n) {
u32 k = 8;
while (k < n * 2) k *= 2;
cap = k / 2, mask = k - 1;
key.resize(k), val.resize(k), used.assign(k, 0);
}
// size を保ったまま. size=0 にするときは build すること.
void clear() {
used.assign(len(used), 0);
cap = (mask + 1) / 2;
}
int size() { return len(used) / 2 - cap; }
int index(const u64& k) {
int i = 0;
for (i = hash(k); used[i] && key[i] != k; i = (i + 1) & mask) {}
return i;
}
Val& operator[](const u64& k) {
if (cap == 0) extend();
int i = index(k);
if (!used[i]) { used[i] = 1, key[i] = k, val[i] = Val{}, --cap; }
return val[i];
}
Val get(const u64& k, Val default_value) {
int i = index(k);
return (used[i] ? val[i] : default_value);
}
bool count(const u64& k) {
int i = index(k);
return used[i] && key[i] == k;
}
// f(key, val)
template <typename F>
void enumerate_all(F f) {
FOR(i, len(used)) if (used[i]) f(key[i], val[i]);
}
private:
u32 cap, mask;
vc<u64> key;
vc<Val> val;
vc<bool> used;
u64 hash(u64 x) {
static const u64 FIXED_RANDOM = std::chrono::steady_clock::now().time_since_epoch().count();
x += FIXED_RANDOM;
x = (x ^ (x >> 30)) * 0xbf58476d1ce4e5b9;
x = (x ^ (x >> 27)) * 0x94d049bb133111eb;
return (x ^ (x >> 31)) & mask;
}
void extend() {
vc<pair<u64, Val>> dat;
dat.reserve(len(used) / 2 - cap);
FOR(i, len(used)) {
if (used[i]) dat.eb(key[i], val[i]);
}
build(2 * len(dat));
for (auto& [a, b]: dat) (*this)[a] = b;
}
};
#line 5 "main.cpp"
void solve() {
LL(a, b);
deque<pi> que;
vc<HashMap<int>> MP(a + 1);
auto upd = [&](ll a, ll b, ll x) -> void {
ll g = gcd(a, b);
a /= g, b /= g;
if (MP[a].count(b)) return;
MP[a][b] = x;
que.emplace_back(a, b);
};
upd(a, b, 0);
while (len(que)) {
auto [a, b] = POP(que);
ll k = MP[a][b];
SHOW(a, b, k);
if (a == 0 || b == 0) {
ll ANS = k + 1;
return print(ANS);
}
upd(a - 1, b, k + 1);
upd(a, b - 1, k + 1);
}
}
signed main() {
INT(T);
FOR(T) solve();
return 0;
}
这程序好像有点Bug,我给组数据试试?
Details
Tip: Click on the bar to expand more detailed information
Test #1:
score: 100
Accepted
time: 0ms
memory: 4016kb
input:
3 3 4 12 20 114 514
output:
3 4 6
result:
ok 3 lines
Test #2:
score: 0
Accepted
time: 2ms
memory: 3680kb
input:
990 1 2 1 3 1 4 1 5 1 6 1 7 1 8 1 9 1 10 1 11 1 12 1 13 1 14 1 15 1 16 1 17 1 18 1 19 1 20 1 21 1 22 1 23 1 24 1 25 1 26 1 27 1 28 1 29 1 30 1 31 1 32 1 33 1 34 1 35 1 36 1 37 1 38 1 39 1 40 1 41 1 42 1 43 1 44 1 45 1 46 1 47 1 48 1 49 1 50 1 51 1 52 1 53 1 54 1 55 1 56 1 57 1 58 1 59 1 60 2 3 2 4 2...
output:
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 2 3 4 2 3 3 2 3 4 2 3 3 2 3 4 2 3 3 2 3 4 2 3 3 2 3 4 2 3 3 2 3 4 2 ...
result:
ok 990 lines
Test #3:
score: 0
Accepted
time: 2ms
memory: 4924kb
input:
2 4859 299556476011016293 4859 911621905353047038
output:
13 13
result:
ok 2 lines
Test #4:
score: 0
Accepted
time: 2ms
memory: 4252kb
input:
3 3023 291106112607863999 3119 972408313573784567 1229 855784672293155279
output:
14 14 14
result:
ok 3 lines
Test #5:
score: 0
Accepted
time: 0ms
memory: 4788kb
input:
2 4023 19114808110467479 4014 412762310847841499
output:
13 13
result:
ok 2 lines
Test #6:
score: 0
Accepted
time: 2ms
memory: 4340kb
input:
3 3119 20432410732723181 1709 985601282232016799 2267 968744673868124159
output:
14 14 14
result:
ok 3 lines
Test #7:
score: 0
Accepted
time: 2ms
memory: 5100kb
input:
2 4535 722580216492418319 4307 6169979311475963
output:
13 13
result:
ok 2 lines
Test #8:
score: 0
Accepted
time: 2ms
memory: 4496kb
input:
2 4267 648637147725952319 4885 401781909910741919
output:
14 14
result:
ok 2 lines
Test #9:
score: 0
Accepted
time: 2ms
memory: 4592kb
input:
2 3023 291106112607863999 4094 673301962326128519
output:
14 13
result:
ok 2 lines
Test #10:
score: 0
Accepted
time: 2ms
memory: 4688kb
input:
2 4703 494504478938496599 3695 527072187619106999
output:
14 14
result:
ok 2 lines
Test #11:
score: 0
Accepted
time: 0ms
memory: 4192kb
input:
22 412 7166395745631535 895 676140333587834537 139 573525160802896508 56 6042824019123403 911 780448274466371463 970 313274528501049618 903 76359562805399746 104 475404596998181268 2 788944373595428631 277 204462142481604047 389 451716743142184785 369 733427971748817258 269 554386798310409825 543 37...
output:
4 8 6 4 7 6 7 6 3 8 7 6 8 6 5 7 3 3 7 6 6 5
result:
ok 22 lines
Test #12:
score: 0
Accepted
time: 2ms
memory: 3936kb
input:
24 113 419398799469164410 383 717450662733415750 443 686043628038128476 20 899250517211552654 204 346169669232649712 464 521611395675501476 410 894122452066951564 116 660159669509763780 962 217837730253597619 289 675700173448722836 130 329471777741246142 450 666991702473801195 353 760484310637419946...
output:
4 7 6 5 7 5 7 4 7 6 3 4 7 6 6 7 5 7 7 8 7 7 6 6
result:
ok 24 lines
Test #13:
score: 0
Accepted
time: 1ms
memory: 4176kb
input:
19 678 133507297980379931 818 421994924168103967 503 501259104841209060 958 877656450668252853 687 442666986748301973 268 935701093685740836 568 786234655346565680 122 866380973396331141 807 54123923233567773 245 134684982334166386 543 221806505911296821 111 652360199004860361 553 860225758175402852...
output:
7 6 7 8 7 5 4 5 6 8 7 6 7 5 5 4 5 6 7
result:
ok 19 lines
Test #14:
score: 0
Accepted
time: 0ms
memory: 3952kb
input:
19 639 901032098365122475 635 515322255447550084 374 755571300645572102 619 101430914435483134 325 510816267620930173 373 207845131647950998 558 474024480402985236 153 702042115398490774 869 45043603816784980 279 18628511044855421 103 994557089605077208 532 165081709815043226 417 349742245230246428 ...
output:
9 7 6 8 6 7 4 6 6 7 5 5 7 7 5 6 6 8 8
result:
ok 19 lines
Test #15:
score: 0
Accepted
time: 2ms
memory: 3800kb
input:
199 6 349576221631571320 97 422699450330996735 31 589592746688366307 57 858302104323820939 82 390853367915026019 11 340917463299735569 32 185588466253907983 17 456086267779461856 82 44061092128004219 28 27906898155718701 17 358195386652849006 53 117524674404177851 40 287782356544825555 19 2862632394...
output:
3 6 5 5 6 5 6 2 3 3 5 5 3 5 3 4 4 5 7 3 4 2 3 3 6 5 6 5 5 5 5 6 3 7 3 5 5 6 4 8 4 5 6 6 4 5 3 3 6 4 4 5 3 4 5 6 4 5 3 5 5 2 6 3 4 3 3 4 6 5 4 5 7 5 5 5 5 3 3 6 4 7 5 6 2 4 4 6 4 4 3 5 5 2 4 3 5 5 6 4 8 6 5 3 4 6 5 7 4 6 4 4 5 4 5 3 5 4 5 5 4 7 6 6 7 6 3 7 5 4 6 7 4 3 5 5 5 6 3 4 5 5 3 6 5 6 5 4 5 7 ...
result:
ok 199 lines
Test #16:
score: 0
Accepted
time: 0ms
memory: 3800kb
input:
195 51 767009661890162122 48 677544419672371709 60 591373361970104616 84 141534595240530690 87 116531056808411746 29 229632508086559065 23 470792692724825252 45 839302114508975768 94 664803074895337778 45 415372336860436849 28 202777563688922479 29 640816432615045290 100 704242439535912153 97 853111...
output:
4 5 4 5 4 4 5 5 7 4 6 4 6 5 2 7 4 3 4 4 5 6 3 4 6 6 3 7 3 6 5 5 3 7 5 7 4 8 4 5 6 5 6 8 3 5 5 6 4 7 7 5 5 6 6 5 6 5 5 3 3 5 4 4 5 5 4 5 6 3 2 3 5 3 6 7 4 6 4 4 5 6 6 5 3 5 4 7 5 4 4 5 5 4 3 4 6 4 6 5 5 5 5 5 3 5 5 2 4 2 3 6 5 5 5 3 4 3 4 6 2 6 4 5 4 5 6 3 5 3 3 2 5 4 5 5 7 4 4 6 4 4 5 5 3 6 3 5 4 4 ...
result:
ok 195 lines
Test #17:
score: 0
Accepted
time: 2ms
memory: 3952kb
input:
182 48 55 95 152 62 90 100 118 20 30 39 40 60 79 62 103 20 22 5 5 29 41 12 19 84 90 100 121 61 88 75 76 73 116 35 64 32 59 88 174 82 142 28 53 79 99 83 85 65 122 86 142 34 67 85 132 80 129 46 59 74 133 61 108 47 54 63 91 17 29 75 136 34 49 54 55 98 195 76 119 45 79 25 42 4 5 89 133 19 35 55 95 62 98...
output:
4 3 4 6 3 3 5 6 3 2 7 4 3 4 6 3 7 4 6 4 6 5 6 4 5 6 4 6 4 7 6 5 7 4 6 5 5 3 4 8 6 5 3 5 5 5 5 7 5 5 7 6 5 6 2 5 4 6 5 7 5 4 3 5 6 6 6 5 5 6 4 5 6 5 5 4 6 5 5 6 4 5 6 3 4 7 6 4 4 5 4 4 5 6 3 5 4 5 6 5 5 6 3 3 6 4 3 4 4 6 7 5 6 5 4 3 6 3 6 3 3 5 5 3 2 4 5 4 4 3 4 5 4 6 3 5 4 6 6 6 7 5 5 5 4 3 7 5 7 4 ...
result:
ok 182 lines
Test #18:
score: 0
Accepted
time: 2ms
memory: 3984kb
input:
201 75 142 12 16 83 160 23 38 72 128 88 107 71 139 71 95 14 17 67 128 99 170 66 128 7 13 94 144 71 95 42 51 21 28 20 22 42 65 21 42 92 97 5 10 87 102 28 41 31 46 46 53 30 36 32 61 26 34 30 33 68 84 6 8 97 147 86 100 11 17 60 68 89 136 57 86 8 8 50 76 7 9 45 79 97 192 33 41 48 77 91 133 30 45 60 96 3...
output:
6 3 4 6 3 6 5 6 4 4 5 3 4 7 6 4 3 3 5 2 4 2 5 6 5 6 3 5 5 3 5 3 5 5 5 4 6 5 2 5 4 6 3 5 5 5 3 3 2 3 5 4 5 6 4 6 4 4 5 2 4 3 5 6 5 2 5 2 2 5 4 3 2 6 5 7 6 4 6 7 2 3 6 4 7 5 3 7 4 8 7 5 5 3 3 2 2 6 4 5 2 3 2 6 6 3 4 2 7 5 7 7 6 5 4 6 5 5 5 2 5 4 3 2 6 3 5 3 2 6 4 5 2 3 3 5 4 5 4 6 6 5 6 7 6 6 3 5 2 2 ...
result:
ok 201 lines
Test #19:
score: 0
Accepted
time: 0ms
memory: 4432kb
input:
2 4157 23039 4199 64439
output:
15 15
result:
ok 2 lines
Test #20:
score: 0
Accepted
time: 2ms
memory: 4256kb
input:
3 2591 31919 2879 64343 3119 91727
output:
15 15 15
result:
ok 3 lines
Test #21:
score: 0
Accepted
time: 2ms
memory: 4292kb
input:
3 2879 9722159 2939 4324319 3031 9979199
output:
16 16 16
result:
ok 3 lines
Test #22:
score: 0
Accepted
time: 0ms
memory: 4496kb
input:
3 2879 5266799 3347 9192959 3399 4324319
output:
16 16 16
result:
ok 3 lines
Test #23:
score: 0
Accepted
time: 2ms
memory: 4508kb
input:
2 4799 9729719 4859 1552318
output:
16 16
result:
ok 2 lines
Extra Test:
score: 0
Extra Test Passed