LeetCode Weekly Contest 368 3問目 - Minimum Number of Groups to Create a Valid Assignment [2910]

Source

LeetCode Weekly Contest 368
問題文

問題概要

省略

解法

省略

cLay(version 20231031-1)のコード

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

#define main dummy_main
{}
#undef main

int N, A[1d6], B[];
ll ok[], val[], x[], y[];

class Solution {
public:
  int minGroupsForValidAssignment(VI &nums) {
    dummy_main();
    int i, j, k, M = nums.size();
    ll res = ll_inf;
    N = nums.size();
    rep(i,N) A[i] = nums[i], B[i] = 1;
    Unique(N, A, B);

    rep(i,M+1) ok[i] = val[i] = 0;
    rep(i,N){
      rep(j,B[i]+1) x[j] = 0, y[j] = int_inf;
      rep(j,1,B[i]+1){
        k = B[i] / j;
        x[k] = 1;
        y[k] <?= j;
        if(B[i]%j==0) x[k-1] = 1, y[k-1] <?= j;
      }
      rep(j,B[i]+1) ok[j] += x[j], val[j] += y[j];
    }

    rep(i,1,M+1) if(ok[i]==N) res <?= val[i];
    return res;
  }
};

Current time: 2024年05月05日20時15分43秒
Last modified: 2023年11月03日19時49分18秒 (by laycrs)
Tags: Competitive_Programming_Incomplete LeetCode
トップページに戻る

Logged in as: unknown user (not login)

ログイン: