LeetCode Weekly Contest 214
問題文
省略
省略
C++に変換後のコードはこちら
#define main dummy_main
{}
#undef main
class Solution {
public:
int maxProfit(vector<int>& A, int K) {
int N = A.size() + 1;
Modint res = 0;
sort(A.rbegin(), A.rend());
A.push_back(0);
rep(i,1,N) if(K && A[i-1]!=A[i]){
ll p = min(A[i-1] - A[i], K / i);
res += p * (A[i-1] + A[i-1] - p + 1) / 2 * i;
K -= p * i;
A[i-1] -= p;
if(A[i-1] > A[i] && K){
res += Modint(A[i-1]) * K;
K = 0;
}
}
return res;
}
};
Current time: 2024年04月25日21時12分46秒
Last modified: 2020年11月08日13時09分26秒 (by laycrs)
Tags: Competitive_Programming_Incomplete LeetCode
トップページに戻る
Logged in as: unknown user (not login)