力扣第 388 场周赛(A~B)

100233. 重新分装苹果

排序,然后往箱子里面放。

cpp 复制代码
#include <bits/stdc++.h>
//#define int long long
#define per(i,j,k) for(int (i)=(j);(i)<=(k);++(i))
#define rep(i,j,k) for(int (i)=(j);(i)>=(k);--(i))
#define debug(a) cout<<#a<<"="<<a<<endl
#define all(x) x.begin(),x.end()
#define fr first
#define se second
#define endl '\n'
using namespace std;

class Solution{
public:
    int minimumBoxes(vector<int>& apple, vector<int>& capacity) {
        sort(all(capacity),[](int a,int b){
            return a>b;
        });
        int now=0;
        per(i,0,apple.size()-1){
            if(apple[i]<=capacity[now]){
                capacity[now]-=apple[i];
            }else{
                apple[i]-=capacity[now];
                now++;
                i--;
            }
        }
        return now+1;
    }
};

100247. 幸福值最大化的选择方案

在序列中选数,每选一个,其他所有数减一。问最终能选出最大的总和。

也是排序然后模拟。

cpp 复制代码
class Solution {
public:
    long long maximumHappinessSum(vector<int>& happiness, int k) {
        sort(happiness.begin(),happiness.end(),[](int a,int b){
            return a>b;
        });
        
        long long ans=0,cnt=-1;
        for(int i=0;i<happiness.size() and k;++i){
            cnt++;
            k--;
            if(happiness[i]-cnt<=0)break;
            ans+=happiness[i]-cnt;
        }
        return ans;
    }
};
相关推荐
清梦20205 分钟前
经典问题---跳跃游戏II(贪心算法)
算法·游戏·贪心算法
Dream_Snowar28 分钟前
速通Python 第四节——函数
开发语言·python·算法
1nullptr39 分钟前
三次翻转实现数组元素的旋转
数据结构
Altair澳汰尔41 分钟前
数据分析和AI丨知识图谱,AI革命中数据集成和模型构建的关键推动者
人工智能·算法·机器学习·数据分析·知识图谱
TT哇44 分钟前
【数据结构练习题】链表与LinkedList
java·数据结构·链表
A懿轩A1 小时前
C/C++ 数据结构与算法【栈和队列】 栈+队列详细解析【日常学习,考研必备】带图+详细代码
c语言·数据结构·c++·学习·考研·算法·栈和队列
Python机器学习AI1 小时前
分类模型的预测概率解读:3D概率分布可视化的直观呈现
算法·机器学习·分类
吕小明么2 小时前
OpenAI o3 “震撼” 发布后回归技术本身的审视与进一步思考
人工智能·深度学习·算法·aigc·agi
1 9 J2 小时前
数据结构 C/C++(实验五:图)
c语言·数据结构·c++·学习·算法
程序员shen1616112 小时前
抖音短视频saas矩阵源码系统开发所需掌握的技术
java·前端·数据库·python·算法