LeetCode算法心得——k-avoiding 数组的最小总和(标记数组)

大家好,我是晴天学长,这是一个细节题和一部分的思维题哈!



2) .算法思路

k-avoiding 数组的最小总和

1,填充一个1到n 的Boolean的数组

要n个数,但是数组大小不能确定。

所以建立1000的大小。

2.遍历筛选,如果数组中有这个的话,标记为false。

3.监测是否是false,true就sum++(前缀和)。


3).代码示例

java 复制代码
class Solution {
    public int minimumSum(int n, int k) {
            boolean[] temp = new boolean[1000];
            int sum = 0;
            for (int i = 1; i <= k&&i<=n; i++) {
                if (k - i <= temp.length && k - i != i && temp[i] == false) {
                    temp[k - i] = true;
                }
            }
            //前缀和
            int i = 1;
            int j = 0;
            while (true){
                if (temp[i] == false){
                    sum+=i;
                    j++;
                    if (j == n){
                        return sum;
                    }
                }
                i++;
            }
    }
}

4).总结

  • 控制好标记数组的大小。
相关推荐
Edingbrugh.南空36 分钟前
Flink ClickHouse 连接器数据读取源码深度解析
java·clickhouse·flink
NE_STOP1 小时前
SpringBoot--简单入门
java·spring
DoraBigHead1 小时前
小哆啦解题记——映射的背叛
算法
Heartoxx1 小时前
c语言-指针与一维数组
c语言·开发语言·算法
hqxstudying1 小时前
Java创建型模式---原型模式
java·开发语言·设计模式·代码规范
孤狼warrior2 小时前
灰色预测模型
人工智能·python·算法·数学建模
京东云开发者2 小时前
京东零售基于国产芯片的AI引擎技术
算法
Dcs2 小时前
VSCode等多款主流 IDE 爆出安全漏洞!插件“伪装认证”可执行恶意命令!
java
保持学习ing2 小时前
day1--项目搭建and内容管理模块
java·数据库·后端·docker·虚拟机
京东云开发者2 小时前
Java的SPI机制详解
java