自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 hh蓝桥杯一题--青蛙跳杯子

这个题目最后是抽象为bfs算法去解决的,一开始我怎么都没想到为什么会用bfs,后来看到他们的讲解才明白可以用bfs解决。BFS:队列 + 状态记录 + 合法性检查。接下来就是代码实现了(典型的bfs模板)图论问题:找从起点到终点的最短路径。:从一个状态到另一个状态的操作。"状态" = 杯子排列。"移动" = 合法交换。:问题的某个特定情况。:所有可能状态的集合。

2025-12-29 22:03:17 117

原创 h的练习--二分

如果 x1 < x2,那么 f(x1) ≥ f(x2) (边长越大,块数越少)上界 r = max(H_i, W_i) 的最大值,这里可以直接取1e5。- 如果 d 较小:容易实现(需要移走的岩石较少)- 如果 x 较小:难以分成 M 段(需要更多段),使得能把数列分成 M 段,且每段的和都不超过。我们要找最大的 d,使得移走的岩石数 ≤ M。我们要找最大的 x,使得 f(x) ≥ K。我们需要把数列分成 M 段连续的子段,使得。我们要找最小的 x,使得能分成 ≤ M 段。

2025-12-05 15:19:08 703

原创 h的学习日记--贪心之区间问题

时,说明当前区间与之前的某个区间有重叠,需要新开一组(时,说明当前区间可以放入已有的某个组,不需要新开组(如果当前点不在该区间内(点的位置 < 区间左端点)则选择该区间的右端点作为一个新点。指针遍历所有左端点(从小到大)指针遍历所有右端点(从小到大)更新点的位置为该区间的右端点。这个有个很巧妙地一点,也就是。初始化点的位置为负无穷。:将所有区间的左端点。

2025-11-28 20:48:09 292

原创 h的做题日记--线性dp

dp[i][j]=max(dp[i-1][j],dp[i][j-1]) 不相等时。当前格子乘 3(如果 t<kt<k):得分加 3×a[i][j]3×a[i][j],tt 加 1。状态方程就是 dp[i][j]=dp[i-1][j-1]+1 (a[i]==b[j])dp[i][j][t]=走到第 i 行第 j 个位置,已经用了 t 次乘 3 的最大得分。这个我一开始想的是dp[i][j]代表在a的i以及b的j时,最长公共子序列的长度。当前格子不乘 3:得分加 a[i][j]a[i][j],tt 不变。

2025-11-27 19:19:08 289

原创 BFS练习2

表示到达位置(x,y)且面朝方向dir时的最少转弯次数。

2025-11-25 16:45:37 245

原创 BFS练习1

但是我的代码不知道为什么总是有一个测试点不过 -_-其他位置:到达时间必须 < 路障放置时间。

2025-11-25 11:25:32 176

原创 区间dp练习

设当前区间长度 len = r-l+1,则已经卖掉了 N-len 份,接下来卖这份是第 N−len+1N−len+1 天。取左端 l:收入 = V[l]×(N−len+1)+dp[l+1][r]V[l]×(N−len+1)+dp[l+1][r]取右端 r:收入 = V[r]×(N−len+1)+dp[l][r−1]V[r]×(N−len+1)+dp[l][r−1]这里区间 [l, r] 表示原序列中第 l 个到第 r 个零食还没被卖,外面的已经卖了。已经卖掉的个数 = N−(r−l+1)N−(r−l+1)

2025-11-23 22:12:00 274 1

原创 二分法模板及练习

模板练习1:进击的奶牛我们要在n个牛舍中放置m头牛,使得。:我们不是在找平均距离最大,而是找"最小的那个距离"最大。

2025-11-14 09:51:42 419

原创 跳跳跳--区间DP问题

这道题可以采用区间dpdp[l][r]:已经跳了区间 [l, r] 内的所有格子时获得的最大得分。

2025-11-12 15:35:20 142

原创 滑动窗口双指针问题

用r表示右边,l表示左边界,通过他们的移动来界定界限。

2025-11-11 19:02:56 158

原创 Kruskal题目训练

就是找到一条最小生成树的权重,然后用原来的减去最小生成树的权重(但一定要注意的是边得个数)这个题目稍微有点不同的就是需要在初始化edge数组的时候计算边的个数。

2025-11-07 14:57:06 147

原创 DFS练习题

【代码】DFS练习题。

2025-11-04 21:13:13 149

原创 KMP字符串匹配

变量定义p[]模式串(要查找的字符),下标从1开始s[]主串(被搜索的字符串),下标从1开始ne[]:next数组,存储模式串的匹配信息next数组对于模式串 "ABABC":位置: 1 2 3 4 5字符: A B A B Cnext[i]= 前i个字符组成的子串中,最长的相等前后缀长度前缀:不包含最后一个字符后缀:不包含第一个字符i=1:"A" → 没有真前缀/后缀 → next[1]=0i=2:"AB" → 前缀"A",后缀"B" → 不相等 → next[2]=0i=3。

2025-10-28 08:59:15 173

原创 单调栈学习

在进行查找nums1的元素在nums2当中的下标值时,用了暴力,有更好的方法,但是还没学会。N 的整数数列,输出每个数左边第一个比它小的数,如果不存在则输出 −1。将温度数组倒置来看就变成了模板的类型。练习3:下一个更大元素(循环数组版)练习2:下一个更大元素。

2025-10-28 08:36:32 127

原创 握手问题蓝桥杯

用数学方法哈哈哈哈哈。

2025-03-17 11:17:58 145

原创 蓝桥杯班级活动

班上一共有 nn 名 (nn 为偶数) 同学,老师想把所有的同学进行分组,每两名同学一组。为了公平,老师给每名同学随机分配了一个 nn 以内的正整数作为 idid,第 ii 名同学的 idid 为 aiai​。老师希望通过更改若干名同学的 idid 使得对于任意一名同学 ii,有且仅有另一名同学 jj 的 idid 与其相同 (ai=ajai​=aj​)。请问老师最少需要更改多少名同学的 idid?第二行为 nn 个由空格隔开的整数 a1,a2,...,ana1​,a2​,...,an​。

2025-03-17 10:19:04 212

原创 蓝桥杯好数

一个整数如果按从低位到高位的顺序,奇数位 (个位、百位、万位 ⋯⋯ ) 上的数字是奇数,偶数位 (十位、千位、十万位 ⋯⋯ ) 上的数字是偶数,我们就称之为 “好数”。给定一个正整数 NN,请计算从 1 到 NN 一共有多少个好数。

2025-03-13 19:06:01 307

原创 蓝桥杯成绩统计

【代码】蓝桥杯成绩统计。

2025-03-13 18:50:36 158

原创 蓝桥杯2024年第十五届省赛真题-传送阵

如果两个环相邻,则可以通过魔法将它们连接起来,从而访问更多的传送阵。小蓝可以选择一个传送阵进入,然后连续进入传送阵。目标是计算小蓝最多能到达多少个不同的传送阵。:取最大的环大小,或者两个相邻环的大小之和。小蓝可以使用一次魔法,从某个传送阵。:传送阵之间的关系会形成环(例如。:每个环中包含的传送阵数量。

2025-02-27 14:24:14 650

原创 二叉树之递归调用

先序遍历访问叶子节点。

2024-12-15 13:38:55 270

原创 图的遍历DFS邻接表法

用邻接表实现图的遍历。

2024-12-06 22:39:45 166

原创 图的遍历之DFS邻接矩阵法

其中g是图结构体指针,v是起点编号。#define MaxVertexNum 20 // 最大顶点数int v;// 顶点数量//邻接矩阵。

2024-12-06 22:23:56 578

原创 AVL树的根

将给定的一系列数字插入初始为空的 AVL 树,请你输出最后生成的 AVL 树的根结点的值。

2024-12-05 16:37:17 300

原创 括号匹配1

7-8 括号匹配检查一段C语言代码的小括号( )、 中括号[ ]和大括号{ }是否匹配。

2024-11-24 16:45:38 523

原创 根据后序和中序遍历输出前序遍历

7-2 根据后序和中序遍历输出前序遍历本题要求根据给定的一棵二叉树的后序遍历和中序遍历结果,输出该树的前序遍历结果。

2024-11-24 10:36:34 306

原创 后缀式求值

7-8 后缀式求值我们人类习惯于书写“中缀式”,如3 + 5 * 2,其值为13。(p.s. 为什么人类习惯中缀式呢?是因为中缀式比后缀式好用么?而计算机更加习惯“后缀式”(也叫“逆波兰式”,Reverse Polish Notation)。上述中缀式对应的后缀式是:3 5 2 * +现在,请对输入的后缀式进行求值。

2024-11-24 10:31:13 249

原创 RESTful接口

RESTful是一种基于,建立在客户端和服务器之间的一种软件架构风格。它是一个轻量级的网络通信协议,旨在为分布式系统提供简单,可扩展和高效的通信方式。咱们小程序的main.py代码中构建了一个基于 FastAPI 的后端应用,为天天账本小程序提供服务,其中包含了多个符合 RESTful 风格的接口定义及相关配置。

2024-11-15 11:38:17 429 1

原创 fastapi+vue实现前后端分离

这段代码是在 FastAPI 应用中添加了一个跨域资源共享(CORS)中间件。CORS 是一种机制,它允许网页从不同的源(域名、协议、端口)请求资源,通过配置合适的 CORS 设置,可以确保前端应用(运行在浏览器中的 JavaScript 代码)能够安全、正确地与后端 FastAPI 应用进行交互,即使它们位于不同的源。为了使前端 Vue 应用能够访问 FastAPI 服务,需要设置 CORS。使用 Axios 在 Vue 组件中连接到 FastAPI 提供的 API。(但我们的小程序中并没有用到)

2024-11-15 11:27:29 1824

原创 http应用层

HTTP(HyperText Transfer Protocol,超文本传输协议)是一个至关重要的协议。它定义了客户端(如浏览器)与服务器之间如何通信,以交换或传输超文本(如 HTML 文档)。HTTP 协议是客户端与服务器之间通信的基础。客户端通过 HTTP 协议向服务器发送请求,服务器收到请求后处理并返回响应。HTTP 协议是一个的协议,即每次请求都需要建立新的连接(HTTP/1.1不需要),且服务器不会保存客户端的状态信息。

2024-11-15 11:10:00 797

原创 xml(一)

xml指的是可扩展性标记语言xml被发明的目的是传输和存储数据,而不是展示数据(html展示数据)xml的标签必须自定义,但在写标签名时要有含义xml是w3c推举的数据传输格式ELEMENT 元素名称(NAME) 元素类型(COUTENT)>元素名称:就是自定义的子标签名称EMPTY:该元素不能包含子元素和文本,但是可以有属性,这类元素称为自闭和标签ANY:该元素可以包含任意在DTD中定义的元素内容。

2024-08-30 17:48:24 1298

原创 虚拟DOM更新基础例子

虚拟DOM的概念是通过状态生成一个虚拟节点树,然后使用虚拟节点树进行渲染。在渲染之前,会使用新生成的虚拟节点和上一次生成的虚拟节点进行对比,只渲染不同的部分。

2024-08-28 18:19:14 440

原创 v-for

通过v-forinlistlist。

2024-08-28 18:19:04 1469 1

原创 解决冒泡捕获在父子组件修饰符中的问题

冒泡(bubbling)原理很简单。假设我们有 3 层嵌套点击内部的<p>会首先运行onclick<p><div><form>document因此,如果我们点击<p>p→div→form。事件处理的另一个阶段被称为“捕获(capturing)”。它很少被用在实际开发中,但有时是有用的。为了在捕获阶段捕获事件,我们需要将处理程序的capture选项设置为truefalsetrue上面这段代码为文档中的元素都设置了点击处理程序,以查看哪些元素上的点击事件处理程序生效了。如果你点击了<p>HTMLBODY。

2024-08-26 22:52:20 586

原创 $event

是指当前触发的是什么事件(,键盘事件等)当我们点击button按钮时,可以看到控制台打印出的事件对象,如下图:点击事件的原生DOM事件对象属性通过该对象自带的一些属性,我们可以避免过多的冗余代码,细化代码。

2024-08-26 22:20:31 611

原创 vue-组件事件

点击我-- 缩写 -->点击我

2024-08-26 15:36:11 1078

原创 父子组件通信

父组件:<子组件 :变量=数据></子组件>子组件:props:['变量’]子组件:this.$emit("自定义事件名称",值')父组件:<Footer @changeStr='changeBtn'></Footer> methods:{fchangeBtn(s){console.log(s)}}

2024-08-25 11:46:35 489

原创 财务小程序账单编辑页面分析

请求发送: 使用this.$api对象发送请求,通常包含一些参数。响应处理: 使用.then()方法来处理成功的响应,检查code字段来确定请求是否成功,并更新组件的状态。错误处理: 如果响应中的code字段表示错误,通常会显示一个提示消息,并可能更新一些状态来反映错误。这种模式确保了组件能够与后端服务进行有效的数据交换,并根据响应更新用户界面。在<template>部分,</view>: 这是通过v-bind传递给组件的 props,types是一个数组,包含了所有可供选择的账单类型。

2024-08-22 18:58:06 1933

原创 账单详情页面分析

5.onLoad(option) { ... }: Vue组件的生命周期钩子,当页面加载时触发。10.onCopyAndToEdit() { ... }: 处理“再来一笔账单”操作的方法。6.onShow() { ... }: Vue组件的生命周期钩子,当页面显示时触发。描述了一个账单详情页面的布局,包含了账单的分类、描述、金额、资产、日期和地址等信息的展示,以及一些操作按钮。8.getBillDetail() { ... }: 获取账单详情的方法。7.methods: { ... }: 定义组件的方法。

2024-08-20 17:41:19 2305

原创 财务管理app pages.json页面解读

组件别名规则(1)每个属性都是一个规则,属性的键是一个正则表达式,用于匹配组件的别名;(2)属性的值是组件的实际路径。例如,"mb-ba-(.*)": "@/components/base/mbill-$1.vue" 表示任何以 mb-ba- 开头的组件名,如 mb-ba-component,都会被映射到 @/components/base/mbill-component.vue 的路径。这里的 $1 是正则表达式中的捕获组,代表匹配到的 mb-ba- 后面的部分。

2024-08-18 21:47:01 1994 1

空空如也

空空如也

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

TA关注的人

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