AtCoder Regular Contest 100/AtCoder Beginner Contest 102 D問題 - Equal Cut

Source

AtCoder Regular Contest 100
AtCoder Beginner Contest 102
問題文 (ARC)
問題文 (ABC)

問題概要

省略

解法

省略

cLayversion 20190902-1)のコード

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

int N;
Grid1d<ll> A;
{
  int i, j, k, x, y;
  ll a, b, c, d;
  ll res = ll_inf;

  rd(N);
  A.malloc(N+1);
  rd(A(N));
  A.setSum();

  x = y = 0;
  rep(i,N){
    while(x+1 < N && A.getSum(x+1,i) >= A.getSum(0,x)) x++;
    while(y+1 < N && A.getSum(y+1,N-1) >= A.getSum(i+1,y)) y++;
    rep(j,2) rep(k,2){
      a = A.getSum(0,x-1+j);
      b = A.getSum(x+j,i);
      c = A.getSum(i+1,y-1+k);
      d = A.getSum(y+k,N-1);
      res <?= max(a,b,c,d) - min(a,b,c,d);
    }
  }

  wt(res);
}

Current time: 2024年03月29日18時40分37秒
Last modified: 2019年09月05日00時51分03秒 (by laycrs)
Tags: Competitive_Programming_Incomplete AtCoder AtCoder_Regular_Contest AtCoder_Beginner_Contest ARC100 ABC102 ARC_B ABC_D
トップページに戻る

Logged in as: unknown user (not login)

ログイン: