自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(27)
  • 收藏
  • 关注

原创 Leetcode 376.摆动序列

如果连续数字之间的差严格地在正数和负数之间交替,则数字序列称为。第一个差(如果存在的话)可能是正数或负数。仅有一个元素或者含两个不等元素的序列也视作摆动序列。例如,[1, 7, 4, 9, 2, 5] 是一个 摆动序列 ,因为差值 (6, -3, 5, -7, 3) 是正负交替出现的。相反, [1, 4, 7, 2, 5] 和 [1, 7, 4, 5, 5] 不是摆动序列,第一个序列是因为它的前两个差值都是正数,第二个序列是因为它的最后一个差值为零。

2023-03-23 22:35:13 145

转载 蓝桥杯模拟赛 滑行

如果小蓝在某个位置,而他上、下、左、右中有一个位置的高度(严格)低于当前的高度,小蓝就可以滑过去,滑动距离为。用于记录从某个点开始能够滑行的最大距离,枚举所有的点,取从所所有点开始滑行的最大高度输出即可。如果小蓝在某个位置,而他上、下、左、右中所有位置的高度都大于等于当前的高度,小蓝的滑行就结束了。小蓝准备在一个空旷的场地里面滑行,这个场地的高度不一,小蓝用一个。个整数,相邻整数之间用一个空格分隔,依次表示每个位置的高度。列的矩阵来表示场地,矩阵中的数值表示场地的高度。输出一行包含一个整数,表示答案。

2023-03-22 23:08:00 375

转载 蓝桥杯省赛模拟题 滑行

如果小蓝在某个位置,而他上、下、左、右中有一个位置的高度(严格)低于当前的高度,小蓝就可以滑过去,滑动距离为。用于记录从某个点开始能够滑行的最大距离,枚举所有的点,取从所所有点开始滑行的最大高度输出即可。如果小蓝在某个位置,而他上、下、左、右中所有位置的高度都大于等于当前的高度,小蓝的滑行就结束了。小蓝准备在一个空旷的场地里面滑行,这个场地的高度不一,小蓝用一个。个整数,相邻整数之间用一个空格分隔,依次表示每个位置的高度。列的矩阵来表示场地,矩阵中的数值表示场地的高度。输出一行包含一个整数,表示答案。

2023-03-21 20:34:06 396

转载 蓝桥杯省赛模拟题 信号覆盖

为了对信号覆盖的情况进行检查,小蓝打算在区域内的所有横纵坐标为整数的点进行测试,检查信号状态。数据范围较小,可以暴力枚举所有的点是否被覆盖,一个点是否被信号覆盖可以枚举所有的信号塔。小蓝负责一块区域的信号塔安装,整块区域是一个长方形区域,建立坐标轴后,西南角坐标为。,表示一个信号塔的坐标。信号塔可能重合,表示两个信号发射器装在了同一个位置。个位置设置了信号塔,每个信号塔可以覆盖以自己为圆心,半径为。,相邻整数之间使用一个空格分隔。输出一行包含一个整数,表示答案。给定信号塔的位置,请问这。

2023-03-21 20:33:17 516

转载 蓝桥杯省赛模拟题 最大联通

列的数字矩阵,矩阵中的每个数都是。

2023-03-21 20:31:27 175

原创 Leetcode 239. 滑动窗口最大值

由于队列中下标对应的元素是严格单调递减的,因此此时队首下标对应的元素就是滑动窗口中的最大值。但与方法一中相同的是,此时的最大值可能在滑动窗口左边界的左侧,并且随着窗口向右移动,它永远不可能出现在滑动窗口中了。为了保持队列的性质,我们会不断地将新的元素与队尾的元素相比较,如果前者大于等于后者,那么队尾的元素就可以被永久地移除,我们将其弹出队列。或者,我们可以设计这么一个队列,将窗口的元素放入这个队列,随着窗口的移动,队列也一进一出,每次移动之后,它能告诉我们队列中的最大值是什么。在队列中,这些下标按照。

2023-02-08 22:19:18 45

原创 Leetcode 151. 反转字符串中的单词

我们也可以不使用语言中的 API,而是自己编写对应的函数。在不同语言中,这些函数实现是不一样的,主要的差别是有些语言的字符串不可变(如 Java 和 Python),有些语言的字符串可变(如 C++)。由于双端队列支持从队列头部插入的方法,因此我们可以沿着字符串一个一个单词处理,然后将单词压入队列的头部,再将队列转成字符串即可。对于字符串可变的语言,就不需要再额外开辟空间了,直接在字符串上原地实现。对于字符串不可变的语言,首先得把字符串转化成其他可变的数据结构,同时还需要在转化的过程中去除空格。

2023-02-01 18:21:02 423

原创 LeetCode 15. 三数之和

【代码】LeetCode 15. 三数之和。

2023-01-29 17:06:53 47

原创 蓝桥杯 小平方

【代码】蓝桥杯 小平方。

2023-01-20 23:43:36 82

原创 蓝桥杯 城邦

【代码】蓝桥杯 城邦。

2023-01-16 21:23:56 142

原创 蓝桥杯 排水管道

【代码】蓝桥杯 排水管道。

2023-01-14 22:50:14 355

原创 Leetcode 300. 最长递增子序列

【代码】Leetcode 300. 最长递增子序列。

2023-01-14 20:51:07 55

原创 蓝桥杯 Fibonacci集合

这是一道结果填空题, 你只需要算出结果后提交即可。本题的结果为一个整数, 在提交答案时只填写这个整数, 填写多余的内容将无法得分。如果一个元素 x 属于 F, 则 3x+2、5x+3 和 8 x+5 都属于集合 F。最小的 5 个 Fibonacci 数 1,2,3,5,8 属于集合 F。请问,这个集合中的第 2020 小元素的值是多少?其他元素都不属于 F。最大运行内存: 256M。

2023-01-04 22:17:23 235

原创 Leetcode 638. 大礼包

【代码】Leetcode 638. 大礼包。

2022-12-21 22:10:21 101

原创 Leetcode 135. 分发糖果

注意到在上图中,对于第三个同学,他既可以被认为是属于绿色的升序部分,也可以被认为是属于蓝色的降序部分。因为他同时比两边的同学评分更高。注意到糖果总是尽量少给,且从 11 开始累计,每次要么比相邻的同学多给一个,要么重新置为 11。而高度也不一定一定是升序,也可能是…其中相同颜色的柱状图的高度总恰好为 1,2,3 …

2022-12-12 17:25:07 91

原创 Leetcode 312. 戳气球

这个应该不难想到的,我们其实就是想穷举戳气球的顺序,不同的戳气球顺序可能得到不同的分数,我们需要把所有可能的分数中最高的那个找出来,对吧。关键在于 dp 数组的定义,需要避免子问题互相影响,所以我们反向思考,将 dp[i][j] 的定义设为开区间,考虑最后戳破的气球是哪一个,以此构建了状态转移方程。所以对于这个戳气球问题,如果想用动态规划,必须巧妙地定义 dp 数组的含义,避免子问题产生相关性,才能推出合理的状态转移方程。所以说,只要遇到求最值的算法问题,首先要思考的就是:如何穷举出所有可能的结果?

2022-12-10 22:26:25 122

原创 Leetcode 198. 打家劫舍

图解动态规划的解题四步骤(C++/Java/Python) - 打家劫舍 - 力扣(LeetCode)

2022-12-08 10:34:55 163

原创 Leetcode 518. 零钱兑换 II

这道题中,给定总金额 amount 和数组coins,要求计算金额之和等于 amount 的硬币组合数。其中,coins 的每个元素可以选取多次,且不考虑选取元素的顺序,因此这道题需要计算的是选取硬币的组合数。可以通过动态规划的方法计算可能的组合数。用dp[x] 表示金额之和等于 xx 的硬币组合数,目标是求 dp[amount]。动态规划的边界是 dp[0] = 1。只有当不选取任何硬币时,金额之和才为 0,因此只有 1 种硬币组合。对于面额为 coin 的硬币,当 coin ≤ i ≤ amount 时

2022-12-07 17:48:33 149

原创 Leetcode 343. 整数拆分

【代码】Leetcode 343. 整数拆分。动态规划

2022-12-02 20:43:45 81

原创 JavaScript 闭包

本地全局闭包。

2022-12-01 10:07:33 676 1

原创 JavaScript this 关键字

JavaScript 关键词表示当前对象的一个引用。它拥有不同的值,具体取决于它的使用位置:像 和 这样的方法可以将 this 引用到任何对象。在对象方法中, this 指向调用它所在方法的对象。在上面一个实例中,this 表示 person 对象。fullName 方法所属的对象就是 person。尝试一下 »单独使用 this,则它指向全局(Global)对象。在浏览器中,window 就是该全局对象为 [object Window]:尝试一下 »严格模式下,如果单独使用,this

2022-12-01 09:42:21 40

原创 Leetcode 416.分割等和子集

0-1 背包」问题是一类非常重要的动态规划问题,一开始学习的时候,可能会觉得比较陌生。建议动笔计算,手动模拟填表的过程,其实就是画表格。这个过程非常重要,自己动手填过表,更能加深体会程序是如何执行的,也能更好地理解「空间优化」技巧的思路和好处。在编写代码完成以后,把数组dp打印出来,看看是不是与自己手算的一样。以加深体会动态规划的设计思想:「不是直接面对问题求解。

2022-11-27 17:06:21 304

原创 【算法竞赛】如何用c++的stringstream处理输入输出

本文主要介绍如何使用stringstream处理在算法练习或竞赛中遇到的输入输出问题。

2022-11-25 16:32:30 2906 1

转载 冯大辉(@Fenng):信息真正的意义(图灵访谈)

他既是码农,又不是码农,在微博有 20 万粉丝的他 “声音” 很大,可他说话的声音很小。冯大辉是数据库方面在国内数一数二的权威专家,可以说他参透了数据和信息在技术层面的含义。可是如今,技术上的纯熟已经无法满足他的视野,他开始探寻信息真正的意义。前路依然坎坷,希望风景越来越好。

2022-11-24 23:12:11 573

原创 Java容器

容器可以管理对象的生命周期、对象与对象之间的依赖关系,可以使用一个配置文件(通常是XML格式的文件),在其中定义好对象的名称、产生过程、哪个对象产生之后必须设定为某个对象的属性等。在启动容器之后,所有的对象都可以直接取用,在用户程序中不用编写任何一行程序代码就可以直接创建对象,或是建立对象与对象之间的依赖关系。容器(Container)并不是Java EE的一个新术语,事实上,在Java SE中已有容器的使用。,或者叫作集合,集合就是将若干性质相同或相近的类对象组合在一起而形成的一个整体。

2022-11-15 21:08:34 136

原创 zend studio出现Warning: mysqli::__construct(): (HY000/2002):解决方法

如图所示,我在想要连接数据库时出现了这个问题,后面检查了php7的.ini文件,才发现mysqli的连接端口错了(之前安装MYSQL8的时候,把mysql5的端口改成了3305,默认是3306来着),改过来就好了。...

2022-03-23 16:01:22 1757

原创 Android Studio中的模拟器一直在加载(Connecting to the emulator···)的解决办法

先上图:网上找了挺多方法,都不算太可靠,后面自己试着调整了一下模拟器的设置,把Boot Option中的Quick Boot改成Cold Boot,关掉avd,再启动就可以了。有遇到这种问题的小伙伴,可以试试。

2022-03-04 18:33:27 17555 9

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除