AtCoder Regular Contest 106 E問題 - Medals

Source

AtCoder Regular Contest 106
問題文

問題概要

省略

解法

省略

cLayversion 20201115-2)のコード

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

int N, K, A[18];
int day[1d6], bc[1d6], pre[4d6];
{
  int i, j, k, res, mask, ok;
  rd(N,K,A(N));
  rep(i,1<<N) bc[i] = BIT_popcount(i);
  rep(i,N) rep(j,0,3.6d6,2*A[i]) rep(k,A[i]) pre[j+k] |= (1<<i);
  res = bsearch_min[int,x,N*K,2*N*K][
    rep(i,1<<N) day[i] = 0;
    rep(k,x) day[pre[k]]++;
    ZetaTransform(1<<N, day);
    rep(i,1<<N) day[i] = x - day[i];
    ok = 1;
    rep(i,1<<N) if(day[i] < (N-bc[i]) * K) ok = 0, break;
  ](ok);
  wt(res);
}

Current time: 2024年03月29日04時08分10秒
Last modified: 2020年11月17日08時05分04秒 (by laycrs)
Tags: Competitive_Programming_Incomplete AtCoder AtCoder_Regular_Contest ARC106 ARC_E
トップページに戻る

Logged in as: unknown user (not login)

ログイン: