第一回 アルゴリズム実技検定 過去問 H問題 - まとめ売り / Bulk Selling

Source

第一回 アルゴリズム実技検定 過去問
問題文

問題概要

省略

解法

省略

cLayversion 20200119-1)のコード

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

int N, C[2d5], Q, T, X, A;
int oddmin, oddsell, allmin, allsell;
{
  int k;
  ll res = 0;
  rd(N,C(N),Q);

  allmin = min(C(N));
  oddmin = int_inf;
  rep(i,0,N,2) oddmin <?= C[i];

  rep(Q){
    rd(T);
    if(T==1){
      rd(X--,A);
      k = C[X] - allsell;
      if(X%2==0) k -= oddsell;
      if(k < A) continue;
      C[X] -= A;
      res += A;
      allmin <?= k - A;
      if(X%2==0) oddmin <?= k - A;
    }
    if(T==2){
      rd(A);
      if(oddmin < A) continue;
      oddsell += A;
      res += (ll)(N+1)/2 * A;
      oddmin -= A;
      allmin <?= oddmin;
    }
    if(T==3){
      rd(A);
      if(allmin < A) continue;
      allsell += A;
      res += (ll) N * A;
      oddmin -= A;
      allmin -= A;
    }
  }
  wt(res);
}

Current time: 2021年09月25日01時09分32秒
Last modified: 2020年01月19日05時24分24秒 (by laycrs)
Tags: Competitive_Programming_Incomplete AtCoder
トップページに戻る

Logged in as: unknown user (not login)

ログイン: