QOJ.ac

QOJ

ID题目提交者结果用时内存语言文件大小提交时间测评时间
#498979#6116. Changing the Sequencescocoa_chan#AC ✓207ms18544kbC++176.4kb2024-07-30 22:33:072024-07-30 22:33:07

Judging History

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

  • [2024-07-30 22:33:07]
  • 评测
  • 测评结果:AC
  • 用时:207ms
  • 内存:18544kb
  • [2024-07-30 22:33:07]
  • 提交

answer

#include<bits/stdc++.h>
using namespace std;
typedef long long int ll;
const int N = 3e5 + 9;
using T = long long;
const T inf = 1LL << 61;
struct MCMF {
  struct edge {
    int u, v;
    T cap, cost;
    int id;
    edge(int _u, int _v, T _cap, T _cost, int _id) {
      u = _u;
      v = _v;
      cap = _cap;
      cost = _cost;
      id = _id;
    }
  };
  int n, s, t, mxid;
  T flow, cost;
  vector<vector<int>> g;
  vector<edge> e;
  vector<T> d, potential, flow_through;
  vector<int> par;
  bool neg;
  void clear(ll N)
  {
      n=N+10;
      s=0;
      t=0;
      mxid=0;
      flow=0;
      cost=0;
      g.clear();
      e.clear();
      d.clear();
      potential.clear();
      flow_through.clear();
      par.clear();
      neg=false;
      g.assign(n, vector<int> ());
  }
  MCMF() {}
  MCMF(int _n) { // 0-based indexing
    n = _n + 10;
    g.assign(n, vector<int> ());
    neg = false;
    mxid = 0;
  }
  void add_edge(int u, int v, T cap, T cost, int id = -1, bool directed = true) {
    if(cost < 0) neg = true;
    g[u].push_back(e.size());
    e.push_back(edge(u, v, cap, cost, id));
    g[v].push_back(e.size());
    e.push_back(edge(v, u, 0, -cost, -1));
    mxid = max(mxid, id);
    if(!directed) add_edge(v, u, cap, cost, -1, true);
  }
  bool dijkstra() {
    par.assign(n, -1);
    d.assign(n, inf);
    priority_queue<pair<T, T>, vector<pair<T, T>>, greater<pair<T, T>> > q;
    d[s] = 0;
    q.push(pair<T, T>(0, s));
    while (!q.empty()) {
      int u = q.top().second;
      T nw = q.top().first;
      q.pop();
      if(nw != d[u]) continue;
      for (int i = 0; i < (int)g[u].size(); i++) {
        int id = g[u][i];
        int v = e[id].v;
        T cap = e[id].cap;
        T w = e[id].cost + potential[u] - potential[v];
        if (d[u] + w < d[v] && cap > 0) {
          d[v] = d[u] + w;
          par[v] = id;
          q.push(pair<T, T>(d[v], v));
        }
      }
    }
    for (int i = 0; i < n; i++) {
      if (d[i] < inf) d[i] += (potential[i] - potential[s]);
    }
    for (int i = 0; i < n; i++) {
      if (d[i] < inf) potential[i] = d[i];
    }
    return d[t] != inf; // for max flow min cost
    // return d[t] <= 0; // for min cost flow
  }
  T send_flow(int v, T cur) {
    if(par[v] == -1) return cur;
    int id = par[v];
    int u = e[id].u;
    T w = e[id].cost;
    T f = send_flow(u, min(cur, e[id].cap));
    cost += f * w;
    e[id].cap -= f;
    e[id ^ 1].cap += f;
    return f;
  }
  //returns {maxflow, mincost}
  pair<T, T> solve(int _s, int _t, T goal = inf) {
    s = _s;
    t = _t;
    flow = 0, cost = 0;
    potential.assign(n, 0);
    if (neg) {
      // Run Bellman-Ford to find starting potential on the starting graph
      // If the starting graph (before pushing flow in the residual graph) is a DAG,
      // then this can be calculated in O(V + E) using DP:
      // potential(v) = min({potential[u] + cost[u][v]}) for each u -> v and potential[s] = 0
      d.assign(n, inf);
      d[s] = 0;
      bool relax = true;
      for (int i = 0; i < n && relax; i++) {
        relax = false;
        for (int u = 0; u < n; u++) {
          for (int k = 0; k < (int)g[u].size(); k++) {
            int id = g[u][k];
            int v = e[id].v;
            T cap = e[id].cap, w = e[id].cost;
            if (d[v] > d[u] + w && cap > 0) {
              d[v] = d[u] + w;
              relax = true;
            }
          }
        }
      }
      for(int i = 0; i < n; i++) if(d[i] < inf) potential[i] = d[i];
    }
    while (flow < goal && dijkstra()) flow += send_flow(t, goal - flow);
    flow_through.assign(mxid + 10, 0);
    for (int u = 0; u < n; u++) {
      for (auto v : g[u]) {
        if (e[v].id >= 0) flow_through[e[v].id] = e[v ^ 1].cap;
      }
    }
    return make_pair(flow, cost);
  }
};
MCMF dinic(200);
ll n,m,i,j,k,l,r,x,y,z,w,s,t,a[1100000],b[1100000],c[1100000],d[1100000],perm[1100000],adj[1100][1100];
/*void construct_dinic(ll x,ll y)
{
    ll i,j;
    for(i=1;i<=m;i++)
    {
        dinic.add_edge(1,i+1,1,0);
        dinic.add_edge(i+m+1,150,1,0);
    }
    for(i=1;i<=m;i++)
    {
        for(j=1;j<=m;j++)
        {
            if((i==x&&j==y)||perm[i]==j)
                dinic.add_edge(i+1,j+m+1,1,-adj[i][j]-10000000);
            else
                dinic.add_edge(i+1,j+m+1,1,-adj[i][j]);
        }
    }
}*/
void construct_dinic(ll x)
{
    ll i,j;
    for(i=1;i<=m;i++)
    {
        dinic.add_edge(1,i+1,1,0);
        dinic.add_edge(i+m+1,150,1,0);
    }
    for(i=1;i<=m;i++)
    {
        for(j=1;j<=m;j++)
        {
            if(perm[i]==j)
            {
                dinic.add_edge(i+1,j+m+1,1,-adj[i][j]*m-10000000*m);
                continue;
            }
            if(i==x)
            {
                dinic.add_edge(i+1,j+m+1,1,-adj[i][j]*m-(m-j));
            }
            else
                dinic.add_edge(i+1,j+m+1,1,-adj[i][j]*m);
        }
    }
}
int main()
{
    scanf("%lld %lld",&n,&m);
    for(i=1;i<=n;i++)
    {
        scanf("%lld",&a[i]);
    }
    for(i=1;i<=n;i++)
    {
        scanf("%lld",&b[i]);
    }
    for(j=1;j<=m;j++)
    {
        dinic.add_edge(1,j+1,1,0);
        dinic.add_edge(j+m+1,150,1,0);
        for(i=1;i<=n;i++)
        {
            if(a[i]==j)
                c[i]=1;
            else
                c[i]=0;
        }
        for(i=1;i<=m;i++)
        {
            d[i]=0;
        }
        for(i=1;i<=n;i++)
        {
            if(c[i]==1)
                d[b[i]]++;
        }
        for(i=1;i<=m;i++)
            adj[j][i]=d[i];
        for(i=1;i<=m;i++)
            dinic.add_edge(j+1,i+m+1,1,-d[i]);
    }
    s=-dinic.solve(1,150).second;
    z=0;
    for(i=1;i<=n;i++)
    {
        if(perm[a[i]]==0)
        {
            /*for(j=1;j<=m;j++)
            {
                dinic.clear(200);
                construct_dinic(a[i],j);
                t=(-dinic.solve(1,150).second)-10000000-10000000*z;
                if(t==s)
                {
                    z++;
                    perm[a[i]]=j;
                    break;
                }
            }*/
            dinic.clear(200);
            construct_dinic(a[i]);
            t=(-dinic.solve(1,150).second);
            //printf("(%lld)\n",t);
            perm[a[i]]=m+1-(t%m+1);
        }
    }
    for(i=1;i<=n;i++)
        printf("%lld ",perm[a[i]]);
}

詳細信息

Test #1:

score: 100
Accepted
time: 0ms
memory: 12000kb

input:

4 3
2 2 3 3
2 2 2 2

output:

1 1 2 2 

result:

ok 4 number(s): "1 1 2 2"

Test #2:

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

input:

5 3
2 2 3 3 2
2 2 2 2 3

output:

3 3 2 2 3 

result:

ok 5 number(s): "3 3 2 2 3"

Test #3:

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

input:

1 1
1
1

output:

1 

result:

ok 1 number(s): "1"

Test #4:

score: 0
Accepted
time: 4ms
memory: 12460kb

input:

1 60
60
60

output:

60 

result:

ok 1 number(s): "60"

Test #5:

score: 0
Accepted
time: 4ms
memory: 12404kb

input:

1 60
1
60

output:

60 

result:

ok 1 number(s): "60"

Test #6:

score: 0
Accepted
time: 2ms
memory: 12396kb

input:

1 60
60
1

output:

1 

result:

ok 1 number(s): "1"

Test #7:

score: 0
Accepted
time: 5ms
memory: 12372kb

input:

1 60
1
1

output:

1 

result:

ok 1 number(s): "1"

Test #8:

score: 0
Accepted
time: 202ms
memory: 12476kb

input:

100000 60
18 36 47 52 31 3 43 49 2 4 60 23 22 3 4 25 11 50 25 40 51 51 59 5 11 50 47 28 29 21 46 39 46 49 23 50 1 24 15 30 45 12 5 2 4 33 23 29 35 35 47 13 10 24 20 44 23 16 27 4 25 27 47 27 57 47 35 31 24 47 27 17 45 44 29 44 43 4 23 20 22 43 2 53 41 32 56 21 28 56 21 15 44 60 11 52 36 26 33 26 4 5...

output:

41 3 18 55 15 53 21 43 48 35 24 38 12 53 35 1 39 14 1 58 10 10 2 46 39 14 18 45 50 22 27 25 27 43 38 14 20 47 42 32 40 16 46 48 35 57 38 50 44 44 18 56 7 47 23 59 38 8 33 35 1 33 18 33 30 18 44 15 47 18 33 51 40 59 50 59 21 35 38 23 12 21 48 52 28 34 9 22 45 9 22 42 59 24 39 55 3 49 57 49 35 2 36 58...

result:

ok 100000 numbers

Test #9:

score: 0
Accepted
time: 205ms
memory: 16492kb

input:

100000 60
37 27 39 34 37 30 10 48 18 9 53 12 43 12 34 32 49 51 39 47 58 52 20 47 35 37 19 31 23 57 32 28 7 52 41 1 15 22 26 53 55 52 23 46 15 49 5 14 49 2 59 36 45 8 29 20 17 47 32 14 22 34 50 13 11 58 19 38 54 22 22 54 36 12 43 57 2 24 2 9 39 41 55 54 21 26 47 40 32 40 36 19 10 20 50 46 25 23 27 16...

output:

24 48 52 8 24 41 10 53 13 31 7 58 45 58 8 32 38 39 52 54 3 56 37 54 23 24 26 15 20 14 32 21 43 56 29 17 1 35 30 7 57 56 20 16 1 38 25 5 38 49 2 34 6 51 11 37 60 54 32 5 35 8 59 46 9 3 26 55 27 35 35 27 34 58 45 14 49 33 49 31 52 29 57 27 50 30 54 36 32 36 34 26 10 37 59 16 40 20 48 47 43 6 47 37 5 5...

result:

ok 100000 numbers

Test #10:

score: 0
Accepted
time: 207ms
memory: 16468kb

input:

100000 60
44 14 37 1 28 26 42 20 12 32 6 52 36 2 26 57 31 24 52 45 31 20 6 31 23 28 21 47 59 14 9 41 21 22 13 21 55 47 53 23 40 34 36 52 11 56 58 57 51 48 10 37 22 58 58 41 46 17 55 4 49 18 15 23 15 39 28 29 15 12 26 21 27 60 27 58 45 21 21 41 4 55 36 39 44 26 30 23 49 21 59 58 24 19 52 47 44 19 5 4...

output:

46 11 40 3 21 53 38 37 35 50 39 15 51 6 53 56 17 8 15 9 17 37 39 17 5 21 45 60 1 11 4 57 45 41 34 45 13 60 10 5 20 19 51 15 27 44 28 56 16 14 18 40 41 28 28 57 32 7 13 12 59 24 54 5 54 25 21 31 54 35 53 45 52 22 52 28 9 45 45 57 12 13 51 25 46 53 36 5 59 45 1 28 8 26 15 60 46 26 58 59 30 34 1 24 58 ...

result:

ok 100000 numbers

Test #11:

score: 0
Accepted
time: 195ms
memory: 12464kb

input:

90568 60
17 21 2 31 6 32 43 4 58 16 16 52 21 60 45 25 16 28 12 32 2 44 45 9 5 14 40 40 37 51 54 5 41 6 9 16 9 19 46 32 3 16 20 27 17 39 51 1 49 24 28 34 50 45 34 60 52 31 1 49 16 24 51 19 7 8 41 10 47 17 9 33 32 5 40 40 55 21 6 47 45 55 16 50 57 15 59 51 29 4 18 44 28 47 48 19 50 15 12 37 25 3 33 8 ...

output:

14 12 41 8 34 3 49 2 30 40 40 27 12 10 56 47 40 50 58 3 41 54 56 53 39 42 28 28 36 26 45 39 55 34 53 40 53 1 57 3 5 40 44 15 14 25 26 11 48 38 50 59 29 56 59 10 27 8 11 48 40 38 26 1 20 24 55 16 51 14 53 23 3 39 28 28 35 12 34 51 56 35 40 29 60 19 6 26 21 2 4 54 50 51 18 1 29 19 58 36 47 5 23 24 27 ...

result:

ok 90568 numbers

Test #12:

score: 0
Accepted
time: 4ms
memory: 12156kb

input:

10742 15
14 10 12 13 1 13 9 3 9 3 2 1 5 2 10 5 12 2 3 6 8 9 12 12 9 11 5 1 14 10 10 5 4 5 7 6 14 6 4 3 10 11 13 1 13 13 2 9 5 10 14 8 2 2 13 10 7 12 8 9 11 7 7 7 2 1 9 12 6 12 3 3 12 1 6 12 3 11 6 3 6 13 1 11 2 9 6 8 8 2 6 10 15 14 10 3 13 5 13 1 14 13 14 5 9 11 8 2 9 7 13 6 12 15 4 12 11 6 4 13 11 ...

output:

2 15 14 5 10 5 9 12 9 12 6 10 3 6 15 3 14 6 12 7 1 9 14 14 9 4 3 10 2 15 15 3 8 3 11 7 2 7 8 12 15 4 5 10 5 5 6 9 3 15 2 1 6 6 5 15 11 14 1 9 4 11 11 11 6 10 9 14 7 14 12 12 14 10 7 14 12 4 7 12 7 5 10 4 6 9 7 1 1 6 7 15 13 2 15 12 5 3 5 10 2 5 2 3 9 4 1 6 9 11 5 7 14 13 8 14 4 7 8 5 4 4 5 12 10 1 7...

result:

ok 10742 numbers

Test #13:

score: 0
Accepted
time: 12ms
memory: 12176kb

input:

52651 22
3 19 10 19 16 6 16 22 2 9 3 21 22 3 7 17 13 11 12 11 22 1 8 10 1 9 22 15 11 12 20 20 13 22 18 17 2 9 2 3 22 7 2 10 3 8 10 22 7 8 21 4 1 9 18 22 1 2 22 16 8 6 16 14 6 6 11 8 14 6 2 19 2 21 8 13 8 16 19 19 19 8 16 3 6 7 16 10 3 20 14 22 19 10 17 8 7 20 16 1 15 17 17 7 22 12 8 17 5 5 6 16 7 5 ...

output:

6 18 5 18 21 14 21 2 17 19 6 1 2 6 13 16 20 12 8 12 2 10 4 5 10 19 2 11 12 8 3 3 20 2 22 16 17 19 17 6 2 13 17 5 6 4 5 2 13 4 1 7 10 19 22 2 10 17 2 21 4 14 21 15 14 14 12 4 15 14 17 18 17 1 4 20 4 21 18 18 18 4 21 6 14 13 21 5 6 3 15 2 18 5 16 4 13 3 21 10 11 16 16 13 2 8 4 16 9 9 14 21 13 9 13 5 3...

result:

ok 52651 numbers

Test #14:

score: 0
Accepted
time: 155ms
memory: 16492kb

input:

100000 60
7 36 14 6 39 10 52 2 51 22 4 53 22 36 15 28 9 26 55 41 18 30 21 38 44 28 12 48 42 43 8 42 15 11 35 14 39 10 42 13 43 13 3 35 19 38 5 49 21 47 2 48 8 9 28 51 29 13 37 8 60 59 41 41 21 48 15 2 3 48 27 8 59 19 36 21 30 45 50 3 18 43 19 3 54 39 22 10 39 37 34 47 54 48 17 6 31 27 23 32 30 38 22...

output:

7 36 14 6 39 10 52 2 51 22 4 53 22 36 15 28 9 26 55 41 18 30 21 38 44 28 12 48 42 43 8 42 15 11 35 14 39 10 42 13 43 13 3 35 19 38 5 49 21 47 2 48 8 9 28 51 29 13 37 8 60 59 41 41 21 48 15 2 3 48 27 8 59 19 36 21 30 45 50 3 18 43 19 3 54 39 22 10 39 37 34 47 54 48 17 6 31 27 23 32 30 38 22 3 18 36 4...

result:

ok 100000 numbers

Test #15:

score: 0
Accepted
time: 151ms
memory: 16476kb

input:

100000 60
2 37 58 49 31 10 26 36 42 55 8 9 16 23 57 32 43 33 2 40 49 19 13 7 5 37 19 52 16 11 47 23 33 59 9 24 21 23 30 49 8 31 18 39 42 56 38 17 60 29 54 13 34 50 31 22 41 48 52 19 53 52 18 6 8 43 22 54 18 6 26 43 13 29 29 40 20 45 10 13 55 12 39 44 33 14 33 53 34 13 57 50 58 1 60 51 8 19 48 38 37 ...

output:

2 37 58 49 31 10 26 36 42 55 8 9 16 23 57 32 43 33 2 40 49 19 13 7 5 37 19 52 16 11 47 23 33 59 9 24 21 23 30 49 8 31 18 39 42 56 38 17 60 29 54 13 34 50 31 22 41 48 52 19 53 52 18 6 8 43 22 54 18 6 26 43 13 29 29 40 20 45 10 13 55 12 39 44 33 14 33 53 34 13 57 50 58 1 60 51 8 19 48 38 37 43 25 39 4...

result:

ok 100000 numbers

Test #16:

score: 0
Accepted
time: 156ms
memory: 12664kb

input:

100000 60
22 35 12 9 49 16 23 30 16 23 19 38 31 34 24 51 25 53 59 52 32 59 20 52 23 46 44 5 59 59 54 41 30 40 60 60 48 23 47 14 16 58 24 17 51 15 4 58 37 45 60 45 48 36 44 7 2 44 35 38 16 2 60 32 58 20 37 39 50 36 43 44 51 14 29 36 22 54 26 22 15 20 12 53 19 44 9 57 55 19 47 10 24 58 10 38 13 32 23 ...

output:

58 35 4 29 1 55 14 21 55 14 16 27 20 59 28 23 42 11 43 24 47 43 38 24 14 8 25 17 43 43 41 22 21 7 5 5 48 14 2 26 55 37 28 39 23 30 18 37 12 50 5 50 48 60 25 15 51 25 35 27 55 51 5 47 37 38 12 3 57 60 53 25 23 26 36 60 58 41 34 58 30 38 4 11 16 25 29 44 10 16 2 45 28 37 45 27 40 47 14 60 17 54 58 59 ...

result:

ok 100000 numbers

Test #17:

score: 0
Accepted
time: 152ms
memory: 16564kb

input:

100000 60
38 1 32 59 24 29 11 40 41 53 32 4 8 17 31 39 47 17 26 40 49 7 28 49 2 45 18 47 36 29 45 6 59 49 49 35 57 25 19 42 57 11 19 41 49 37 2 43 36 18 26 27 12 9 32 8 46 55 51 39 21 57 16 41 7 9 5 39 30 10 21 43 58 4 21 29 13 29 20 8 34 16 37 32 27 1 16 17 6 22 49 22 35 26 58 25 1 13 20 55 20 12 4...

output:

10 58 4 24 59 8 36 19 47 45 4 40 49 55 21 9 18 55 2 19 22 26 32 22 11 27 5 18 15 8 27 6 24 22 22 12 54 39 41 38 54 36 41 47 22 60 11 33 15 5 2 7 28 3 4 49 30 57 43 9 1 54 44 47 26 3 46 9 17 51 1 33 13 40 1 8 29 8 14 49 37 44 60 4 7 58 44 55 6 48 22 48 12 2 13 39 58 29 14 57 14 28 31 39 6 25 45 10 55...

result:

ok 100000 numbers

Test #18:

score: 0
Accepted
time: 23ms
memory: 16776kb

input:

100000 60
7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 ...

output:

7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 7 ...

result:

ok 100000 numbers

Test #19:

score: 0
Accepted
time: 25ms
memory: 16476kb

input:

100000 60
18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18...

output:

18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 18 ...

result:

ok 100000 numbers

Test #20:

score: 0
Accepted
time: 24ms
memory: 16472kb

input:

100000 60
15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15 15...

output:

30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 30 ...

result:

ok 100000 numbers

Test #21:

score: 0
Accepted
time: 24ms
memory: 16424kb

input:

100000 60
53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53 53...

output:

29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 29 ...

result:

ok 100000 numbers

Test #22:

score: 0
Accepted
time: 134ms
memory: 16764kb

input:

97200 60
28 14 56 52 33 17 17 28 42 22 12 44 51 43 57 8 15 45 4 11 21 7 38 19 47 13 36 47 38 50 57 29 11 11 39 15 37 29 24 38 9 36 4 59 25 4 46 46 23 2 37 18 42 59 52 45 9 30 50 36 6 32 15 57 8 41 10 4 8 31 3 60 9 31 7 59 12 17 22 51 45 49 20 50 37 24 26 28 3 57 13 45 54 5 33 29 32 57 21 2 3 48 53 1...

output:

1 2 3 4 5 6 6 1 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 23 21 26 13 27 18 18 28 15 29 27 30 21 31 25 17 32 33 17 34 34 35 36 29 37 7 32 4 16 31 38 26 25 39 40 15 13 14 41 42 17 14 43 44 45 31 43 20 32 9 6 8 11 16 46 47 26 29 30 48 1 44 13 24 16 49 50 5 27 40 13 19 36 44 51 52 24 53 52 ...

result:

ok 97200 numbers

Test #23:

score: 0
Accepted
time: 138ms
memory: 16500kb

input:

97200 60
41 58 55 30 40 42 6 29 30 25 51 45 23 17 21 10 12 44 10 26 41 14 24 42 27 8 60 55 49 5 17 59 41 12 39 15 54 52 32 43 59 6 11 10 26 60 24 6 40 25 22 33 43 56 29 15 5 10 52 57 59 9 15 29 59 58 17 36 41 58 11 60 20 35 49 2 60 59 60 3 51 55 45 44 11 24 13 22 41 31 24 23 4 36 4 27 32 27 28 56 50...

output:

1 2 3 4 5 6 7 8 4 9 10 11 12 13 14 15 16 17 15 18 1 19 20 6 21 22 23 3 24 25 13 26 1 16 27 28 29 30 31 32 26 7 33 15 18 23 20 7 5 9 34 35 32 36 8 28 25 15 30 37 26 38 28 8 26 2 13 39 1 2 33 23 40 41 24 42 23 26 23 43 10 3 11 17 33 20 44 34 1 45 20 12 46 39 46 21 31 21 47 36 48 41 37 48 8 49 38 43 50...

result:

ok 97200 numbers

Test #24:

score: 0
Accepted
time: 138ms
memory: 16496kb

input:

97200 60
21 37 1 23 13 12 28 8 41 60 2 56 25 21 41 39 4 27 53 58 55 35 52 51 50 23 27 37 7 7 53 34 56 51 13 56 21 5 53 25 37 2 57 4 9 3 57 58 14 13 2 16 16 58 10 37 20 21 48 41 37 52 31 3 1 50 28 51 20 59 17 38 11 42 47 31 51 46 13 52 11 35 17 34 10 2 33 41 3 54 41 53 21 60 16 43 17 25 40 49 43 11 3...

output:

1 2 3 4 5 6 7 8 9 10 11 12 13 1 9 14 15 16 17 18 19 20 21 22 23 4 16 2 24 24 17 25 12 22 5 12 1 26 17 13 2 11 27 15 28 29 27 18 30 5 11 31 31 18 32 2 33 1 34 9 2 21 35 29 3 23 7 22 33 36 37 38 39 40 41 35 22 42 5 21 39 20 37 25 32 11 43 9 29 44 9 17 1 10 31 45 37 13 46 47 45 39 43 14 18 30 24 9 48 8...

result:

ok 97200 numbers

Test #25:

score: 0
Accepted
time: 156ms
memory: 16472kb

input:

93551 60
34 49 31 2 60 13 44 48 48 40 24 4 1 38 1 12 48 14 59 17 30 1 19 37 48 23 9 54 56 15 22 47 56 55 40 44 12 38 27 16 5 16 25 23 56 8 15 23 19 58 32 30 30 36 6 9 24 4 51 31 48 49 47 56 5 7 32 23 5 45 30 33 52 33 7 12 15 46 51 2 17 16 16 40 22 52 17 13 6 30 27 32 55 17 53 39 28 21 40 52 37 45 19...

output:

1 3 4 15 5 2 10 6 6 9 8 7 14 16 14 12 6 11 13 20 17 14 19 18 6 22 25 24 28 21 30 23 28 27 9 10 12 16 26 39 29 39 34 22 28 31 21 22 19 32 35 17 17 33 42 25 8 7 36 4 6 3 23 28 29 37 35 22 29 41 17 40 43 40 37 12 21 38 36 15 20 39 39 9 30 43 20 2 42 17 26 35 27 20 47 49 54 45 9 43 18 41 19 11 11 38 35 ...

result:

ok 93551 numbers

Test #26:

score: 0
Accepted
time: 160ms
memory: 12356kb

input:

93602 60
52 30 49 38 25 36 20 18 49 59 44 33 27 36 48 23 23 43 4 56 40 14 37 17 49 18 50 7 35 42 55 31 51 19 32 31 19 29 35 26 27 34 15 35 47 51 43 17 4 19 15 47 32 8 17 11 22 34 5 48 13 24 5 25 58 14 23 32 4 28 56 32 51 5 34 31 43 39 7 48 4 1 18 24 50 11 29 39 54 6 50 21 7 53 18 33 15 10 51 43 10 1...

output:

6 1 2 3 4 5 7 12 2 18 8 10 15 5 13 14 14 21 16 9 19 11 17 20 2 12 23 26 22 24 28 29 30 25 27 29 25 34 22 32 15 37 33 22 38 30 21 20 16 25 33 38 27 35 20 31 36 37 39 13 40 46 39 4 42 11 14 27 16 44 9 27 30 39 37 29 21 59 26 13 16 41 12 46 23 31 34 59 45 55 23 47 26 58 12 10 33 43 30 21 43 12 55 55 17...

result:

ok 93602 numbers

Test #27:

score: 0
Accepted
time: 161ms
memory: 14724kb

input:

93567 60
16 9 27 36 29 39 40 56 56 58 41 47 54 1 29 44 16 10 4 4 14 20 56 32 31 59 49 13 23 25 3 32 37 36 28 5 18 10 51 30 30 52 57 2 4 5 57 56 53 31 11 1 38 16 23 28 37 1 30 24 49 6 38 33 26 2 45 32 8 34 39 8 16 11 33 22 19 55 35 32 48 52 28 20 28 55 39 5 7 9 25 42 47 13 40 39 42 21 28 38 15 5 39 4...

output:

2 5 3 1 4 7 6 10 10 8 9 12 15 20 4 11 2 13 16 16 18 19 10 22 14 17 24 30 31 32 29 22 26 1 23 25 27 13 28 21 21 36 40 37 16 25 40 10 34 14 44 20 33 2 31 23 26 20 21 35 24 42 33 51 45 37 39 22 38 43 7 38 2 44 51 41 46 48 55 22 52 36 23 19 23 48 7 25 47 5 32 57 12 30 6 7 57 53 23 33 59 25 7 39 40 43 30...

result:

ok 93567 numbers

Test #28:

score: 0
Accepted
time: 134ms
memory: 18516kb

input:

100000 60
45 4 17 19 45 44 14 20 13 26 19 58 6 1 43 60 31 40 34 16 16 49 30 44 24 21 6 16 18 42 2 39 23 57 10 23 12 30 14 2 4 9 31 18 19 49 2 51 16 57 53 48 54 50 35 44 33 24 36 31 46 34 3 41 59 45 24 35 28 40 12 28 47 55 58 28 10 52 24 1 58 32 53 54 20 55 53 32 30 15 52 11 6 23 25 40 48 47 11 11 15...

output:

1 2 3 4 1 5 6 7 8 9 4 10 11 12 13 14 15 16 17 18 18 19 20 5 21 29 11 18 22 23 24 25 26 27 28 26 30 20 6 24 2 31 15 22 4 19 24 32 18 27 33 34 35 36 37 5 38 21 39 15 40 17 41 42 43 1 21 37 44 16 30 44 45 46 10 44 28 47 21 12 10 48 33 35 7 46 33 48 20 49 47 50 11 26 51 16 34 45 50 50 49 31 47 52 22 1 5...

result:

ok 100000 numbers

Test #29:

score: 0
Accepted
time: 141ms
memory: 12400kb

input:

100000 60
5 13 15 49 36 4 56 24 20 7 44 40 36 48 58 32 2 18 24 51 7 46 60 35 11 20 53 39 49 41 36 31 14 52 2 35 43 57 40 42 24 40 55 52 24 1 14 21 48 52 18 22 48 54 16 49 45 53 53 43 23 31 16 5 31 45 32 5 15 3 2 7 57 8 17 24 3 22 46 18 6 51 57 17 39 34 6 8 44 52 10 21 17 47 35 45 7 1 16 40 6 33 59 3...

output:

1 2 3 4 5 6 7 8 9 10 11 12 5 13 14 15 16 17 8 18 10 19 20 21 22 9 23 24 4 25 5 26 28 29 16 21 30 31 12 32 8 12 33 29 8 34 28 35 13 29 17 36 13 37 38 4 39 23 23 30 40 26 38 1 26 39 15 1 3 41 16 10 31 42 43 8 41 36 19 17 44 18 31 43 24 45 44 42 11 29 46 35 43 47 21 39 10 34 38 12 44 48 49 5 7 49 31 20...

result:

ok 100000 numbers

Test #30:

score: 0
Accepted
time: 24ms
memory: 16500kb

input:

100000 60
56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56 56...

output:

59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 59 ...

result:

ok 100000 numbers

Test #31:

score: 0
Accepted
time: 21ms
memory: 18544kb

input:

100000 60
33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33 33...

output:

9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 9 ...

result:

ok 100000 numbers

Test #32:

score: 0
Accepted
time: 132ms
memory: 16676kb

input:

99960 60
17 10 31 26 3 4 13 8 56 26 39 46 41 42 19 37 37 49 20 25 16 35 29 36 15 27 31 6 60 32 36 56 27 36 48 12 26 58 6 59 54 8 9 11 53 10 34 20 45 57 56 45 12 28 53 36 48 10 32 33 60 53 15 53 24 31 51 22 21 33 6 12 17 15 33 9 4 13 7 46 23 46 34 58 26 45 54 16 48 23 30 45 32 23 44 8 38 12 56 34 21 ...

output:

1 2 3 4 5 6 7 8 9 4 10 11 12 13 14 15 15 16 17 18 19 20 21 22 23 24 3 25 26 27 22 9 24 22 28 29 4 30 25 31 32 8 33 34 35 2 36 17 37 38 9 37 29 39 35 22 28 2 27 40 26 35 23 35 41 3 42 43 44 40 25 29 1 23 40 33 6 7 45 11 46 11 36 30 4 37 32 19 28 46 47 37 27 46 48 8 49 29 9 36 44 18 37 17 28 37 50 43 ...

result:

ok 99960 numbers

Test #33:

score: 0
Accepted
time: 139ms
memory: 16520kb

input:

99960 60
57 10 6 36 21 48 37 33 56 40 53 56 1 9 9 23 39 31 30 3 32 59 3 12 12 25 59 7 41 49 29 21 56 17 36 36 25 32 43 54 60 16 38 40 25 50 58 30 56 20 42 46 55 32 16 37 54 48 41 8 27 25 4 13 33 59 36 28 9 52 59 54 55 52 1 54 9 54 20 32 34 4 25 23 39 47 14 23 10 38 31 39 36 26 6 57 8 30 41 19 27 15 ...

output:

1 2 3 4 5 6 7 8 9 10 11 9 12 13 13 14 15 16 17 18 19 20 18 21 21 22 20 23 24 25 26 5 9 27 4 4 22 19 28 29 30 31 32 10 22 33 34 17 9 35 36 37 38 19 31 7 29 6 24 39 40 22 41 42 8 20 4 43 13 44 20 29 38 44 12 29 13 29 35 19 45 41 22 14 15 46 47 14 2 32 16 15 4 48 3 1 39 17 24 49 40 50 7 2 51 44 12 21 2...

result:

ok 99960 numbers

Test #34:

score: 0
Accepted
time: 140ms
memory: 12376kb

input:

100000 60
1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 ...

output:

60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 60 ...

result:

ok 100000 numbers