自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Secret Message G(字典树统计前缀问题)

比如查找aac,a作为前缀会被flag++,同时num++,这样会重复计算一次,因此,需要特判,当还没有遍历到字符串末尾-1的时候访问到的flag直接加到答案中,否则放到num计算即可。2.在统计相互作为前缀的时候,设置数组flag,需要增加记录某一个字符串结束的位置,比如构建a完毕,那么就在a的末尾行flag++;刚开始还是没有理解字典树的原理,调的时间很长,最重要的就是这个p的理解和普通字典树的局限性--------------------!:给两堆字符串,找第二堆中每个字符串在第一堆中的前缀数量。

2023-12-05 22:22:37 409

原创 货车运输(kruskal+最大生成树+LCA)

这里要注意的是,题中图不一定是连通的,因此最大生成树求完,整个图变为森林,因此需要对每个树找一个根节点,我使用无效的结点0来代替。2.很容易想到kruskal+并查集,将图转为最大生成树,最大生成树,可以保证任意两点之间的路径的边的权值最大,再小的边也无需考虑,按边权值降序排序,然后kruskal做n-1次,生成最大生成树。它们一开始不相连,在这一步后代表元素(两个根结点)连接权值为 w的点,才使得它们相连,所以最近公共祖先权值是新结点,权值 w。在kruskal求最大生成树的时候,也可以边生成,边建树。

2023-12-04 22:36:29 410

原创 c++文件

总结一下文件,顺便复习文件两大类:文本文件(字符)和二进制文件(保留数据类型)一、文本文件打开方式:只读:file.open(“文件名.格式”,ios::in)只写:file.open(“文件名.格式”,ios::out)//这两种每次打开均会刷新文件可读可写:file.open(“文件名.格式”,ios::in|ios::out)追加:file.open(“文件名.格式”,ios::app)//这两种不会刷新文件内容//上述四种如果文件不存在,会创建一个新文件。测试文件是否打开成功:

2022-04-16 11:34:28 2628

原创 简易酒店管理系统(c++)

酒店管理系统c++

2022-03-22 20:32:46 1109 1

原创 简易酒店管理系统(c++)

*主要功能:1.打印已经被预定的房号,用于客户订房 2.客户退房,结算时间和消费 特点:使用person和client类,文件,引用,全局变量*#include<iostream>#include<string.h>#include<iomanip>#include<fstream>using namespace std;class person {private: int roomnum; char *name; c

2022-03-22 20:28:09 2625 1

原创 开心的金明(动态规划,初学者c++)

自述:第一次写,话有点多,写写思路希望对自己有帮助,同时也希望能帮到需要的人。解题思路:List item把物品价格和重要度放在两个不同的数组(money[],impo[]),利用同一个下标访问多个数组的同一物品的数据,再开辟一个数组bag[26][100000],列数为总钱数加一(因为我发现我这个数组他不赋值的时候是随机数据而不是零,读者可自行选择),这个题中的重要度和物品加钱的乘积是需要放入背包的,重要度不参与比较,所以用每一个物品的乘积覆盖相应的重要度。,2. List item先把大

2022-03-14 21:02:00 1145

空空如也

空空如也

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

TA关注的人

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