QOJ.ac

QOJ

IDProblemSubmitterResultTimeMemoryLanguageFile sizeSubmit timeJudge time
#283182#7878. Matrix DistancesmaspyAC ✓465ms57504kbC++2012.9kb2023-12-14 00:28:432023-12-14 00:28:44

Judging History

你现在查看的是最新测评结果

  • [2023-12-14 00:28:44]
  • 评测
  • 测评结果:AC
  • 用时:465ms
  • 内存:57504kb
  • [2023-12-14 00:28:43]
  • 提交

answer

#line 1 "library/my_template.hpp"
#if defined(LOCAL)
#include <my_template_compiled.hpp>
#else
#pragma GCC optimize("Ofast")
#pragma GCC optimize("unroll-loops")

#include <bits/stdc++.h>

using namespace std;

using ll = long long;
using u32 = unsigned int;
using u64 = unsigned long long;
using i128 = __int128;
using u128 = unsigned __int128;
using f128 = __float128;

template <class T>
constexpr T infty = 0;
template <>
constexpr int infty<int> = 1'000'000'000;
template <>
constexpr ll infty<ll> = ll(infty<int>) * infty<int> * 2;
template <>
constexpr u32 infty<u32> = infty<int>;
template <>
constexpr u64 infty<u64> = infty<ll>;
template <>
constexpr i128 infty<i128> = i128(infty<ll>) * infty<ll>;
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_mod_2(int x) { return __builtin_parity(x); }
int popcnt_mod_2(u32 x) { return __builtin_parity(x); }
int popcnt_mod_2(ll x) { return __builtin_parityll(x); }
int popcnt_mod_2(u64 x) { return __builtin_parityll(x); }
// (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 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;
}
#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;

#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); }
#line 3 "main.cpp"

void solve() {
  LL(N, M);
  VV(ll, A, N, M);
  vi X;
  FOR(i, N) FOR(j, M) X.eb(A[i][j]);
  UNIQUE(X);
  ll K = len(X);
  vvc<pi> dat(K);
  FOR(i, N) FOR(j, M) {
    ll x = LB(X, A[i][j]);
    dat[x].eb(i, j);
  }

  ll ANS = 0;
  for (auto& XY: dat) {
    vi X, Y;
    for (auto& [x, y]: XY) { X.eb(x), Y.eb(y); }
    ll n = len(X);
    sort(all(X));
    sort(all(Y));
    FOR(i, n) {
      ll cf = (n - 1) - 2 * i;
      ANS -= cf * X[i];
      ANS -= cf * Y[i];
    }
    /*
    FOR(j, n) FOR(i, n) {
      ANS += abs(X[i] - X[j]);
      ANS += abs(Y[i] - Y[j]);
    }
    */
  }
  ANS *= 2;
  print(ANS);
}

signed main() {
  solve();
  return 0;
}

这程序好像有点Bug,我给组数据试试?

Details

Tip: Click on the bar to expand more detailed information

Test #1:

score: 100
Accepted
time: 1ms
memory: 3492kb

input:

2 2
1 1
2 2

output:

4

result:

ok 1 number(s): "4"

Test #2:

score: 0
Accepted
time: 0ms
memory: 3560kb

input:

4 4
1 3 2 4
2 1 2 3
1 3 3 2
3 2 1 4

output:

152

result:

ok 1 number(s): "152"

Test #3:

score: 0
Accepted
time: 88ms
memory: 50684kb

input:

1000 1000
227980299 227980299 227980299 227980299 227980299 776958596 227980299 227980299 227980299 227980299 227980299 227980299 227980299 227980299 227980299 227980299 776958596 227980299 227980299 329001637 227980299 227980299 227980299 329001637 227980299 227980299 227980299 227980299 227980299 ...

output:

506784086339644

result:

ok 1 number(s): "506784086339644"

Test #4:

score: 0
Accepted
time: 83ms
memory: 42504kb

input:

1000 1000
701031019 701031019 902550481 515963342 902550481 701031019 902550481 701031019 701031019 701031019 701031019 701031019 701031019 902550481 701031019 701031019 701031019 902550481 701031019 902550481 701031019 902550481 902550481 902550481 902550481 515963342 701031019 701031019 701031019 ...

output:

293351133301656

result:

ok 1 number(s): "293351133301656"

Test #5:

score: 0
Accepted
time: 73ms
memory: 43324kb

input:

1000 1000
584147147 584147147 771066621 584147147 814776600 814776600 584147147 814776600 814776600 814776600 771066621 814776600 814776600 771066621 584147147 814776600 814776600 771066621 814776600 584147147 771066621 584147147 814776600 771066621 814776600 584147147 814776600 584147147 771066621 ...

output:

222221591276684

result:

ok 1 number(s): "222221591276684"

Test #6:

score: 0
Accepted
time: 83ms
memory: 48864kb

input:

1000 1000
451748258 451748258 205399494 451748258 451748258 451748258 451748258 451748258 953934338 451748258 580264463 451748258 451748258 451748258 451748258 588594555 451748258 451748258 451748258 451748258 451748258 451748258 451748258 451748258 451748258 451748258 953934338 451748258 451748258 ...

output:

450794820267988

result:

ok 1 number(s): "450794820267988"

Test #7:

score: 0
Accepted
time: 86ms
memory: 41524kb

input:

1000 1000
548583482 635446288 548583482 635446288 635446288 548583482 548583482 635446288 801198618 548583482 635446288 635446288 548583482 635446288 548583482 548583482 548583482 548583482 635446288 635446288 635446288 635446288 635446288 635446288 548583482 726064808 635446288 801198618 548583482 ...

output:

237272499061426

result:

ok 1 number(s): "237272499061426"

Test #8:

score: 0
Accepted
time: 110ms
memory: 33504kb

input:

1000 1000
596800174 215475167 727165477 215475167 596800174 479596632 596800174 479596632 340778824 596800174 340778824 340778824 596800174 727165477 792552295 215475167 825136342 215475167 15133890 15133890 792552295 215475167 15133890 15133890 215475167 792552295 186221070 596800174 825136342 7925...

output:

66666979915604

result:

ok 1 number(s): "66666979915604"

Test #9:

score: 0
Accepted
time: 78ms
memory: 51200kb

input:

1000 1000
283321818 144879541 144879541 144879541 144879541 144879541 144879541 144879541 351529453 755622562 144879541 144879541 144879541 144879541 144879541 144879541 144879541 144879541 144879541 144879541 144879541 144879541 144879541 144879541 144879541 144879541 144879541 144879541 144879541 ...

output:

429192094084416

result:

ok 1 number(s): "429192094084416"

Test #10:

score: 0
Accepted
time: 102ms
memory: 39064kb

input:

1000 1000
161743512 416078170 855756681 889314339 416481165 889314339 855756681 889314339 855756681 889314339 855756681 264524276 855756681 855756681 855756681 889314339 855756681 889314339 889314339 889314339 494796476 889314339 889314339 889314339 889314339 855756681 855756681 855756681 855756681 ...

output:

216113198146626

result:

ok 1 number(s): "216113198146626"

Test #11:

score: 0
Accepted
time: 144ms
memory: 34624kb

input:

1000 1000
111711290 83219409 652958381 160096781 438510184 979014841 96096837 793714095 266288718 28912730 675001370 464693704 642313963 565598413 429830978 233570610 775904524 969001190 158819374 451251731 210397449 83219409 766749559 473545004 517036030 851023554 166176740 96096837 160096781 63151...

output:

6666591233498

result:

ok 1 number(s): "6666591233498"

Test #12:

score: 0
Accepted
time: 113ms
memory: 48088kb

input:

1000 1000
206885994 206885994 206885994 206885994 206885994 206885994 206885994 206885994 206885994 484082914 206885994 737061221 206885994 206885994 206885994 206885994 206885994 206885994 206885994 206885994 206885994 206885994 206885994 885540330 206885994 15312403 206885994 206885994 206885994 2...

output:

426348228198774

result:

ok 1 number(s): "426348228198774"

Test #13:

score: 0
Accepted
time: 111ms
memory: 41972kb

input:

1000 1000
119021511 262340498 119021511 571262579 262340498 119021511 119021511 262340498 262340498 262340498 262340498 262340498 119021511 119021511 119021511 262340498 262340498 262340498 119021511 119021511 16968046 262340498 262340498 119021511 616963806 119021511 119021511 119021511 616963806 2...

output:

213349390292676

result:

ok 1 number(s): "213349390292676"

Test #14:

score: 0
Accepted
time: 162ms
memory: 31940kb

input:

1000 1000
294834416 710159087 71576000 771158418 734800928 519231261 66958341 846593614 842762889 266263223 449970247 393627406 452797162 702159979 103716509 528121669 411977733 41875663 181065802 366920699 973794257 627741675 408432509 319085147 24347426 209592388 529269033 798345726 138118120 1776...

output:

666600092404

result:

ok 1 number(s): "666600092404"

Test #15:

score: 0
Accepted
time: 106ms
memory: 49204kb

input:

1000 1000
774400533 774400533 774400533 774400533 774400533 774400533 774400533 774400533 774400533 774400533 774400533 774400533 774400533 774400533 774400533 774400533 991718494 774400533 774400533 774400533 774400533 774400533 774400533 774400533 774400533 774400533 774400533 774400533 774400533 ...

output:

427191601662978

result:

ok 1 number(s): "427191601662978"

Test #16:

score: 0
Accepted
time: 117ms
memory: 43344kb

input:

1000 1000
786051867 749266154 786051867 336663633 786051867 786051867 336663633 786051867 786051867 786051867 336663633 786051867 786051867 800962293 786051867 786051867 786051867 223735788 786051867 336663633 336663633 786051867 148679559 336663633 786051867 336663633 336663633 786051867 73949921 6...

output:

213692206718908

result:

ok 1 number(s): "213692206718908"

Test #17:

score: 0
Accepted
time: 177ms
memory: 33940kb

input:

1000 1000
589040181 665125243 509194312 722650288 704530640 677647760 941069621 844686966 269308659 817746365 703209818 600393306 651385133 624370978 615782335 583567534 607685482 258818547 960735386 920234049 589990452 396294522 54789277 611895702 401553455 423080336 45108579 47104502 265933176 774...

output:

66671759372

result:

ok 1 number(s): "66671759372"

Test #18:

score: 0
Accepted
time: 124ms
memory: 51560kb

input:

1000 1000
340219853 340219853 340219853 439933175 340219853 340219853 340219853 321321381 68352466 340219853 340219853 340219853 340219853 340219853 3205688 340219853 262286151 340219853 340219853 921123028 340219853 340219853 340219853 831324481 740878043 340219853 340219853 340219853 809209277 340...

output:

427237509950002

result:

ok 1 number(s): "427237509950002"

Test #19:

score: 0
Accepted
time: 149ms
memory: 45500kb

input:

1000 1000
312807013 312807013 671631100 312807013 312807013 312807013 671631100 671631100 671631100 671631100 671631100 707041060 312807013 671631100 312807013 671631100 671631100 671631100 312807013 312807013 671631100 671631100 671631100 671631100 312807013 315186901 312807013 312807013 312807013 ...

output:

213105139802108

result:

ok 1 number(s): "213105139802108"

Test #20:

score: 0
Accepted
time: 264ms
memory: 40420kb

input:

1000 1000
968334296 124281306 602304677 823629809 4594569 888524150 464787481 66467938 740368986 98259485 609892270 10390448 306213053 649927667 507023218 743709660 259153419 9610640 278544598 763827885 452113052 834395597 591175799 165403867 53538577 69976033 120747719 800800356 966618685 95535293 ...

output:

6665934902

result:

ok 1 number(s): "6665934902"

Test #21:

score: 0
Accepted
time: 154ms
memory: 55152kb

input:

1000 1000
917320864 917320864 917320864 917320864 917320864 917320864 917320864 917320864 279445549 917320864 917320864 917320864 917320864 917320864 917320864 917320864 917320864 917320864 917320864 168955665 917320864 917320864 67798067 451366625 917320864 917320864 917320864 917320864 917320864 9...

output:

426406609284792

result:

ok 1 number(s): "426406609284792"

Test #22:

score: 0
Accepted
time: 159ms
memory: 46736kb

input:

1000 1000
563910894 248691777 502346207 502346207 563910894 502346207 563910894 124707688 563910894 502346207 563910894 674899337 502346207 563910894 322714828 563910894 880755660 563910894 502346207 563910894 502346207 502346207 563910894 623520096 821743885 563910894 563910894 563910894 563910894 ...

output:

213337139288624

result:

ok 1 number(s): "213337139288624"

Test #23:

score: 0
Accepted
time: 465ms
memory: 57504kb

input:

1000 1000
73364669 160660181 892922167 705497300 862628574 77538387 281208292 899898205 132405130 749782378 940763807 919799196 943173556 657398506 921058988 192689732 309195568 999117035 726766947 8645595 568429846 372621995 976592332 626494982 740333029 234304386 641643560 572521033 682509489 1057...

output:

665074264

result:

ok 1 number(s): "665074264"

Test #24:

score: 0
Accepted
time: 1ms
memory: 3508kb

input:

1 1
1

output:

0

result:

ok 1 number(s): "0"

Extra Test:

score: 0
Extra Test Passed