AtCoder Beginner Contest 181 F問題 - Silver Woods

Source

AtCoder Beginner Contest 181
問題文

問題概要

省略

解法

省略

cLayversion 20201102-1)のコード

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

int N; double X[100], Y[100];
int m, a[1d5], b[1d5]; double c[1d5];
{
  int node, st, ed;
  unionFind uf;
  rd(N,(X,Y)(N));
  node = N;
  st = node++;
  ed = node++;
  uf.walloc(node, 1);

  arrInsert(m, m, a, st, b, ed, c, 200.0);
  rep(i,N) arrInsert(m, m, a, st, b, i, c, 100+Y[i]);
  rep(i,N) arrInsert(m, m, a, ed, b, i, c, 100-Y[i]);
  rep(i,N) rep(j,i+1,N) arrInsert(m, m, a, i, b, j, c, sqrt((X[i]-X[j]) ** 2 + (Y[i]-Y[j]) ** 2));
  sortA(m, c, a, b);
  rep(i,m){
    uf(a[i], b[i]);
    if(uf(st) == uf(ed)) wt(c[i]/2), break;
  }
}

Current time: 2021年09月18日04時12分42秒
Last modified: 2020年11月03日08時58分49秒 (by laycrs)
Tags: Competitive_Programming_Incomplete AtCoder AtCoder_Beginner_Contest ABC181 ABC_F
トップページに戻る

Logged in as: unknown user (not login)

ログイン: