iOS
C++网上购书系统项目的二次开发
1.来源 该项目来自同学以前的期末大作业:网上购书系统项目。 2.运行环境及运行结果 (1)运行环境:Dev C++ (2)运行结果: 代码如下: 点击查看代码 项目结构: 运行截图: 3.主要问题列表 (1)layfolk类、honored类、member类仅实现了各级别会员的折扣率的定义,book类实现功能过多,类功能分配不合理。 (2)订单查看功能没有做好对数据储存的分配,导致
P1228 地毯填补问题 解题报告
前言 这是一道思维+分治好题,值得纪念一下。 题目大意 一个 (2^k times 2^k) 的地,第 (x) 和 (y) 不能铺,其余的用这三种铺满,不能叠加铺,问方案: 比如 (8 times 8) 的,公主站在 ((x, y)) 处,则方案为: 考虑分治,我们先简单的分一下。 分治肯定需要状态都统一,很容易发现,这题不统一的点就在于四个块里面只有一个块有公主。 那么不如让每个块都有一个
用Pandoc生成TXT格式的目录
我一直使用Markdown格式写作,使用Pandoc生成PDF和Word格式的文档。Pandoc能生成很好的章节和目录,但有时候,也需要生成TXT格式的目录,今天就尝试了一下。 由于我写的内容章节比较多,所以我先写了一个Makefile,主要内容如下: 使用make txt命令就可以生成TXT格式的文件和目录了,包括章节和编号,效果非常好,部分内容如下: 渲染效果如下: 第一章 神奇的数
【基础算法】二分查找
二分查找 什么是二分?将问题分成两个部分。 猜数游戏 计算机给你一个范围内的随机数,你要输入一个数,计算机给你反馈是太大了还是太小了,直到你输出正确的答案。 怎么设计这个程序呢? 是不是我们在系统给出提示的基础上判断了这个数所在的区间呢。这样我们就可以不断缩小区间,找到这个数。 提问:我们是随便输入的这个区间里的数字吗? 提问:如果换成不是有序的序列,我们还能这样猜吗? 所以,二分的条件是:单调
C++ 接口(抽象类) 虚函数
接口描述了类的行为和功能,而不需要完成类的特定实现。 C++ 接口是使用抽象类来实现的,抽象类与数据抽象互不混淆,数据抽象是一个把实现细节与相关的数据分离开的概念。 如果类中至少有一个函数被声明为纯虚函数,则这个类就是抽象类。纯虚函数是通过在声明中使用 "= 0" 来指定的 设计抽象类(通常称为 ABC)的目的,是为了给其他类提供一个可以继承的适当的基类。抽象类不能被用于实例化对象,它只能作
P2240 【深基12.例1】部分背包问题
题目大意 给定n个元素的基本信息,代价与价值,计算每个元素的性价比,使其和最大 显然,本题可以以贪心的思想去解决,每个元素可以分裂,因而不需要考虑全局最优解,所以可以贪心。其中,计算每个元素的性价比,即a.v / a.m > b.v / b.m,根据这个式子可变形得a.v * b.m > b.v * a.m,化除为乘,更加精确,根据性价比排序收集 聊点闲话 贪心,更多的是一种思想,
Living-Dream 系列笔记 第48期
区间 dp:以区间为子问题的 dp。 T1 令 (dp_{i,j}) 表示合并区间 ([i,j]) 所需代价。易得答案为 (dp_{1,n})。 初始状态即为 (dp_{i,i}=0),其余为 (infty)。 考虑枚举中转点 (k),将区间 ([i,j]) 分为区间 ([i,k]) 与 ([k+1,j]) 分别进行合并。 因此有转移: [dp_{i,j}=dp_{i,k}+dp_{k+1,j}+
vue2+Element-UI弹出层中带复选框的树结构反填
vue2+Element-UI弹出层中带复选框的树结构反填 前言 我们做RBAC时候做角色的权限设置时在弹出权限列表时可能需要反填该角色现有的权限,所以以下案例是个按简单的RBAC的角色权限的树结构的反填。 案例 1、最关键的是树要有node-key属性,因为树的很多方法都要使用到这个属性 2、使用ref="[treeName]"属性给树加引用,这样可以使用this.$refs.[t
dfs剪枝(排除等效冗余)
一、剪枝优化 1.优化搜索顺序:有限考虑分支较少的搜索方式,常见的比如从大到小排序 2.排除等效冗余:排除等效的情况,本题就是很好的例子,稍后解释 3.可行性剪枝 4.最优性剪枝 二、本题的排除等效冗余 1.如果是木棒的第一段就搜索失败了,则一定搜不到方案 2.如果是木棒的最后一段搜索失败了,则一定搜索不到方案 3.如果木棒的长度为k的一段搜索失败了,那么后续同样长为k的一段同样也会搜索失败 剪枝
在Avalonia项目中使用MediatR和MS.DI库实现事件驱动通信
大家好,我是沙漠尽头的狼! AvaloniaUI是一个强大的跨平台.NET客户端开发框架,让开发者能够针对Windows、Linux、macOS、Android和iOS等多个平台构建应用程序。在构建复杂的应用程序时,模块化和组件间的通信变得尤为重要。Prism框架提供了模块化的开发方式,支持插件的热拔插,而MediatR则是一个实现了中介者(Mediator)模式的事件订阅发布框架,非常适合用于模
C++新U4-贪心算法1
学习目标 贪心算法的概念 [【贪心算法(一)】书架] View Code [【贪心算法(一)】三角形的最大周长] View Code [【贪心算法(一)】打折糖果] View Code [【贪心算法
「杂题乱刷」洛谷 P4801
链接 套路题。 最小值: 排序后直接分讨即可。 最大值: 排序后枚举开头为 (a_1),(a_n) 的情况后双指针贪心即可。 代码: 点击查看代码 总结 此题是简单的贪心题,难度为 (1),质量可以给到 (7.8) 分。
C++ ++ 和 -- 运算符重载
原文 递增运算符( ++ )和递减运算符( -- )是 C++ 语言中两个重要的一元运算符。 1、递增和递减一般是改变对象的状态,所以一般是重载为成员函数。 2、重载递增递减,一定要和指针的递增递减区分开。因为这里的重载操作的是对象,而不是指针(由于指针是内置类型,指针的递增递减是无法重载的),所以一般情况的递增递减是操作对象内部的成员变量。 3、递增和递减分为前置和后置情况,a = ++b;(前
快递小站大作业的vector容器的引入和输出界面文件的同一管理
来源:大三学长在大一下学期的C++大作业,快递小站管理系统。 运行环境:devc++ 运行结果截图: 程序代码: 点击查看代码 主要问题列表: 1. 单个输入取件人和发件人信息时,程序复杂不易管理。 问题改善: 引入vector容器,具有高度的稳定性和可靠性。它们内置了许多安全特性,如边界检查和迭代器失效检查,有助于减少程序中的错误和漏洞。将取件人收件人信息打包管理,方便程序运行和管
The 2023 ICPC Asia Shenyang Regional Contest (The 2nd Universal Cup. Stage 13: Shenyang)
Preface 唉一大早起来爬起来打9点的训练,结果人差点被创飞了 前期直接感染猪头病毒,写什么什么挂,然后就经典红温心态爆炸 后面点外卖的时候还被麦当劳背刺了,浪费我半个小时直接把我们队罚时搞爆炸了 虽然后面徐神力挽狂澜写出字符串D,但由于时间不够了导致会写的B没能写出来(不过这题本来就很多坑点感觉不给我90min我都写不出来) 最后6题喜提银首,鉴定为被外卖坑了 A. Intro: Dawn
最大字段和,区间矩阵
最大字段和 原题链接:P1115 最大子段和 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 解析:经典动态规划:最大子数组问题 - 知乎 (zhihu.com) 我写的代码: 最大加权矩阵 原题链接:P1719 最大加权矩形 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 解析:1.p1719最大加权矩形--前缀和+贪心+DP+矩阵压缩 - 知乎 (zhih
大顶堆,小顶堆--优先队列,示例
有一个数组,要求找出最大的3个数,最小的4个数。 小顶堆,从大到小排序,筛选最小的N个数。 大顶堆,从小到大排序,筛选最大的N个数。 小顶堆和大顶堆都是二叉堆的一种形式,是一种用于实现优先队列的数据结构。它们的区别在于元素的排列方式和根节点的值。 小顶堆(Min Heap):在小顶堆中,每个节点的值都小于或等于其子节点的
C++ 函数调用运算符 () 重载
函数调用运算符 () 可以被重载用于类的对象。当重载 () 时,您不是创造了一种新的调用函数的方式,相反地,这是创建一个可以传递任意数目参数的运算符函数。 结果
Qt/C++音视频开发67-保存裸流加入sps/pps信息/支持264/265裸流/转码保存/拉流推流
一、前言 音视频组件除了支持保存MP4文件外,同时还支持保存裸流即264/265文件,以及解码后最原始的yuv文件。在实际使用过程中,会发现部分视频文件保存的裸流文件,并不能直接用播放器播放,查阅资料得知原来是缺少sps/pps信息,监控行业的rtsp/rtmp/录像mp4文件都是会带的,所以很少遇到这个现象。其实sps/pps信息在解码的时候就已经在对应AVCodecContext或者AVStr
CF1931G One-Dimensional Puzzle 题解
CF1931G One-Dimensional Puzzle 题解 题意传送门 思路 考虑一下怎么入手,发现一个拼图只能接一些拼图(废话但是有用),所以我们可以简单地画出一个链接关系的图,(u to v) 表示编号为 (u) 的拼图后面能够接编号为 (v) 的拼图。然后我们发现问题转换为:在这张图上找到一个正好经过每个节点特定次数的路径。 仔细观察这张图,我们可以发现,(1,2) 号拼图一定是轮流