AtCoder Beginner Contest 139 E問題 - League

Source

AtCoder Beginner Contest 139
問題文

問題概要

省略

解法

省略

cLayversion 20190902-1)のコード

C++に変換後のコードはこちら

int N, A[1000][999];

int nn, mm, x[1d6], y[1d6], s[1d6];
int d[1000];
graph g;

int gt(int a, int b){
  sortE(a,b);
  return a*N + b;
}

{
  int i, j, k, r, res = 0;

  rd(N);
  rep(i,N) rd(A[i](N-1));
  rep(i,N) rep(j,N-1) A[i][j]--;

  nn = N * N;
  rep(i,N) rep(j,1,N-1){
    x[mm] = gt(i, A[i][j-1]);
    y[mm] = gt(i, A[i][j]);
    mm++;
  }

  g.setDirectEdge(nn, mm, x, y);
  k = g.TopologicalSort(s);
  if(!k) wt(-1), return 0;

  rep(i,nn){
    j = s[i] / N;
    k = s[i] % N;
    if(j >= k) continue;
    r = max(d[j], d[k]) + 1;
    d[j] = d[k] = r;
    res >?= r;
  }
  wt(res);
}

Current time: 2021年09月19日21時25分32秒
Last modified: 2019年09月03日21時28分30秒 (by laycrs)
Tags: Competitive_Programming_Incomplete AtCoder AtCoder_Beginner_Contest ABC139 ABC_E
トップページに戻る

Logged in as: unknown user (not login)

ログイン: