結果

問題 No.3297 Bake Cookies
ユーザー Nafmo2
提出日時 2025-08-20 16:29:02
言語 C++17
(gcc 13.3.0 + boost 1.87.0)
結果
WA  
実行時間 -
コード長 817 bytes
コンパイル時間 3,957 ms
コンパイル使用メモリ 251,448 KB
実行使用メモリ 7,716 KB
最終ジャッジ日時 2025-08-20 16:29:14
合計ジャッジ時間 10,942 ms
ジャッジサーバーID
(参考情報)
judge1 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
other AC * 21 WA * 6
権限があれば一括ダウンロードができます

ソースコード

diff #

#include <bits/stdc++.h>
#include <atcoder/all>
typedef long long int ll;
#define REP(i, n) for (ll i = 0; i < signed(n); i++)
using namespace atcoder;
using namespace std;
int main() {
  ll N, M, T;
  cin >> N >> M >> T;
  assert(1 <= N && N <= 200000);
  assert(1 <= M && M <= 200000);
  assert(1 <= T && T <= 1000000000);
  vector<ll> A(N);
  REP (i, M) {
    ll x;
    cin >> x;
    assert(1 <= x && x <= N);
    A[x - 1]++;
  }
  ll ok = 1e18, ng = 0;
  auto judge = [&](ll mid) {
    ll sum = 0;
    REP (i, N) {
      if (A[i] <= mid) {
        sum += A[i] + (mid - A[i]) / T;
      } else {
        sum += mid;
      }
    }
    return M <= sum;
  };
  while (abs(ok - ng) > 1) {
    ll mid = (ok + ng) / 2;
    if (judge(mid))
      ok = mid;
    else
      ng = mid;
  }
  cout << ok << endl;
  return 0;
}
0