leetcode 6450. k-avoiding 数组的最小总和


给你两个整数 nk

对于一个由 不同 正整数组成的数组,如果其中不存在任何求和等于 k 的不同元素对,则称其为 k-avoiding 数组。

返回长度为 nk-avoiding 数组的可能的最小总和。

示例 1:

复制代码
输入:n = 5, k = 4
输出:18
解释:设若 k-avoiding 数组为 [1,2,4,5,6] ,其元素总和为 18 。
可以证明不存在总和小于 18 的 k-avoiding 数组。

示例 2:

复制代码
输入:n = 2, k = 6
输出:3
解释:可以构造数组 [1,2] ,其元素总和为 3 。
可以证明不存在总和小于 3 的 k-avoiding 数组。 

提示:

  • 1 <= n, k <= 50

C++

cpp 复制代码
class Solution {
public:
    int minimumSum(int n, int k) {
        unordered_map<int,int> neg;
        int res=0;
        int i=1;
        int count=0;
        while(i<=n) {
            if(neg.find(i)==neg.end()) {
                res+=i;
                count++;
                if(k-i!=i) {
                    neg[k-i]=1;
                }
            }
            i++;
        }
        while(count<n) {
            if(neg.find(i)==neg.end()) {
                count++;
                res+=i;
            }
            i++;
        }
        return res;
    }
};
相关推荐
小葡萄20253 分钟前
黑马程序员C++2024新版笔记 第三章 数组
笔记·算法·c++20
勇闯逆流河6 小时前
【数据结构】堆
c语言·数据结构·算法
pystraf7 小时前
LG P9844 [ICPC 2021 Nanjing R] Paimon Segment Tree Solution
数据结构·c++·算法·线段树·洛谷
飞川撸码8 小时前
【LeetCode 热题100】739:每日温度(详细解析)(Go语言版)
算法·leetcode·golang
yuhao__z8 小时前
代码随想录算法训练营第六十六天| 图论11—卡码网97. 小明逛公园,127. 骑士的攻击
算法
Echo``8 小时前
3:OpenCV—视频播放
图像处理·人工智能·opencv·算法·机器学习·视觉检测·音视频
Nobkins9 小时前
2021ICPC四川省赛个人补题ABDHKLM
开发语言·数据结构·c++·算法·图论
88号技师9 小时前
2025年6月一区SCI-不实野燕麦优化算法Animated Oat Optimization-附Matlab免费代码
开发语言·算法·matlab·优化算法
ysy164806723910 小时前
03算法学习_977、有序数组的平方
学习·算法
codists10 小时前
《算法导论(第4版)》阅读笔记:p83-p85
算法