当前位置: 首页 > article >正文

【LeetCode】每日一题 2023_12_3 可获得的最大点数(前缀和/滑动窗口/贪心)

文章目录

  • 刷题前唠嗑
  • 题目:可获得的最大点数
    • 题目描述
    • 代码与解题思路
  • 结语

刷题前唠嗑


LeetCode?启动!!!

题目:可获得的最大点数

题目链接:1423. 可获得的最大点数

题目描述

代码与解题思路

func maxScore(cardPoints []int, k int) int {
    front := 0
    for i := 0; i < k; i++ {
        front += cardPoints[i]
    }
    ans := front
    for i := 1; i <= k; i++ {
        front += cardPoints[len(cardPoints)-i] - cardPoints[k-i]
        ans = max(ans, front)
    }
    return ans
}

我这个方法算是有那么一点前缀+贪心的思想吧,主要流程是这样的:

  1. 先把前 k 个数都加到一起,用 front 存着
  2. 然后倒着遍历后 k 个数,具体来说就是:去掉一个前 k 个的数,增加一个后 k 个的数,然后求最大值,这样就能将全部的情况都走了一遍,并把它们能得到的最大值存了起来,如果凭空想象不出来可以对着代码和样例走一遍

结语

我看到还有滑动窗口的解法,原本应该去看看的,但是最近有些累,没力气了,躺倒


http://www.kler.cn/a/155332.html

相关文章:

  • 豆瓣均分9:不容错过的9本大模型入门宝藏书籍,非常详细收藏我这一篇就够了
  • UVC 输出视频格式修改和windows下数据分析
  • 【Webpack实用指南】如何拆分CSS资源(2)
  • 第74期 | GPTSecurity周报
  • Vue中优雅的使用Echarts的三种方式
  • HarmonyOS Next 实战卡片开发 02
  • 第十四章 算法和数据结构
  • 〖大前端 - 基础入门三大核心之JS篇㊺〗- 定时器和延时器
  • Qt面试题
  • 使用凌鲨进行内网穿透
  • WebUI自动化学习(Selenium+Python+Pytest框架)003
  • 循环神经网络RNN及其变体LSTM、GRU
  • QT 中 QTimer 类 备查
  • 计算机导论——第39章 文件和目录
  • SCAU:1065 数组中的指针
  • Hdoop学习笔记(HDP)-Part.17 安装Spark2
  • 数据领域建设的五大方向
  • 团队可能出现的问题以及应对方案
  • 基于深度学习面向中医诊断的舌象图像分割系统
  • Java链式编程、什么是链式编程、链式编程怎么调用,链式编程的使用形式,Builder模式实现链式编程(保姆级教程)
  • mysql8报sql_mode=only_full_group_by(存储过程一直报)
  • 【Go】EasyJson使用
  • Maven 进阶学习指南---setting详解
  • 测试Centos上用Gunicorn启动的Django-Web服务在Django源文件有改变的情况下能否自动重载最新源码下的web服务
  • 数据结构奇妙旅程之顺序表和链表
  • 进行主从复制时出现的异常FATAL CONFIG FILE ERROR (Redis 6.2.6)Reading the configuration file