首页 > 其他分享 >leetcode笔记——325周赛

leetcode笔记——325周赛

时间:2022-12-27 10:33:28浏览次数:68  
标签:二分 周赛 礼盒 LeetCode 力扣 这道题 325 leetcode

这道题一次遍历就可以做,直接用abs ( i - startindex ) 和 n - abs ( i - startindex ) 即可表示距离,但我做的时候绕麻烦了,

用while 和l,r去做,还用了很多次%n,做麻烦了

正难则反 两边最少的次数,也就是中间连续窗口的最大的长度,问题转化成怎样取窗口,能够保证两边符合取K次,且长度最大

这道题利用的是二分答案的思想,有大佬说,看到 最小值的最大值 就是二分了,通过每次二分答案,再check一下,最终得到最大值

check的时候利用的是贪心思想,对礼盒price进行排序,取最小的符合条件的礼盒,这样后面可操作空间就大

二分的时候需要注意细节

 

 ( l + r + 1) // 2防止最后两个数字跳不出来循环,如 [ 8 , 9 ]

这道题我最开始想dfs,因为每次就只有选和不选两种可能,毫无疑问TLE了,那这个时候就转向dp

但是正向dp不容易,又是利用到了正难则反思想,选择两个分区都满足sum >= k,那只要选择一个分法,其中一个sum < k ,最后再减去即可,

问题转化为:怎么挑选num,使得和小于k,01背包问题:f [i] [j] 表示考虑到第i个数,和为 j 的取法数量

 

 

标签:二分,周赛,礼盒,LeetCode,力扣,这道题,325,leetcode
From: https://www.cnblogs.com/sun-secretbase/p/17007523.html

相关文章

  • leetcode-541. 反转字符串 II
    541.反转字符串II-力扣(Leetcode)比较简单,想清楚边界条件,然后做一下字符的反转即可。go可以将不能变动的字符串转换成可以变动的[]byte之后,修改完之后,再转成string......
  • #yyds干货盘点# LeetCode程序员面试金典:二叉搜索树序列
    题目:从左向右遍历一个数组,通过不断将其中的元素插入树中可以逐步地生成一棵二叉搜索树。给定一个由不同节点组成的二叉搜索树 root,输出所有可能生成此树的数组。 示例1:......
  • #yyds干货盘点# LeetCode程序员面试金典:检查子树
    题目:检查子树。你有两棵非常大的二叉树:T1,有几万个节点;T2,有几万个节点。设计一个算法,判断T2是否为T1的子树。如果T1有这么一个节点n,其子树与T2一模一样,则T2为T1......
  • leetcode-17. 电话号码的字母组合
    17.电话号码的字母组合给定一个仅包含数字2-9的字符串,返回所有它能表示的字母组合。答案可以按任意顺序返回。给出数字到字母的映射如下(与电话按键相同)。注意1不对应......
  • Leetcode207
    numCourses->总的课程数目Prerequisited->pairinalistdenotinghavetofinishbtostudya class Solution:    def canFinish(self, numCourses: int......
  • [LeetCode] 1759. Count Number of Homogenous Substrings
    Givenastring s,return thenumberof homogenous substringsof s. Sincetheanswermaybetoolarge,returnit modulo 109 +7.Astringis homogenou......
  • AcWing83场周赛题解
    第一题、奇偶题目链接:https://www.acwing.com/activity/content/problem/content/7862/比较麻烦(本人做法)找出不同字符个数,再判断。#include<iostream>usingnamespac......
  • leetcode 451. 根据字符出现频率排序
    一、题目给定一个字符串s,根据字符出现的频率对其进行降序排序。一个字符出现的频率是它出现在字符串中的次数。返回已排序的字符串 。如果有多个答案,返回其中......
  • leetcode-521. 最长特殊序列 Ⅰ
    521.最长特殊序列Ⅰ-力扣(Leetcode)脑筋急转弯funcfindLUSlength(astring,bstring)int{ifa!=b{returnmax(len(a),len(b))}retur......
  • 20221325 实验八-Web部署 实验报告
    Web部署(openEuler中基于LAMP部署WordPress)实验过程一、配置openEuler华为云openEuler安装后,没有配置yum源,我们通过重新配置。cd/etc/yum.repos.dviopenEuler_x86_......