自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 sill idealTree buildDeps 卡住的问题

直接上链接。

2024-01-11 11:34:57 766

原创 Linux编程实践Day5

ls /dev。

2023-10-08 23:49:20 101

原创 Linux编程实践Day4

【代码】Linux编程实践Day4。

2023-10-04 22:29:06 108

原创 Linux编程实践Day3

man 2 stat。

2023-10-04 22:28:10 128

原创 Linux编程实践Day2

在Unix系统中增加新的命令是一件很容易的事,把程序的可执行文件放到以下任意一个目录即可:/bin,/usr/bin,/usr/local/bin。Unix联机帮助分为很多节,如第1小节中是关于用户命令的帮助,第2小节是关于系统调用的帮助,第5小节是关于配置文件的帮助。Linux系统中了解一个命令最好的方法便是使用。不幸的是,本机的wsl环境似乎有点问题,,本机的login似乎会先让。

2023-10-04 22:25:02 69 1

原创 Linux编程实践Day1

【代码】Linux编程实践Day1。

2023-10-04 22:23:10 60 1

原创 Git手册

1.:设置全局用户名,信息记录在文件中2.:设置全局邮箱地址,信息记录在文件中3.git init:将当前目录配置成git仓库,信息记录在隐藏的.git文件夹中。

2023-10-04 22:21:44 37 1

原创 有关VMWare tools安装后仍然无法全屏的问题

我觉得一定要注意上图的中的第二句话,我的显示器好像有点大,我仅仅把虚拟机拖到了我的笔记本上,就可以全屏了,然后再拖回显示器也就可以全屏了。本人找了很多很多教程,基本上都没用,我用的ubuntu好像是22.的版本。

2023-04-02 20:34:12 634

原创 算法竞赛进阶指南第十天

首先,如果我们可以随便染色结点,那么我们肯定是按A[i]的值从大到小的顺序来染色,但我们现在很显然染色顺序是有要求的,所以。

2023-01-19 15:22:17 88

原创 算法竞赛进阶指南第九天

将牛按开始吃草的时间从小到大排序,并且用堆维护已经考虑过的牛的结束吃草的最小时间,如果当前考虑的牛的开始时间小于等于该值,则需要开一个新的畜栏,否则则将该牛放入该畜栏中。经典贪心例题:原问可以转化为,我给你一堆区间,然后设置点好让每个区间都有一个点,问设置的点数最小值。贪心策略:按照区间左端点从小到大排序,设雷达位置为x,则给出公式x=min(x,r[i])按minspf降序排列,每次选取满足当前牛的spf最大的用。按maxspf升序排列,每次选取满足当前牛的spf最小的用。

2023-01-19 14:51:31 67

原创 算法竞赛进阶指南第八天

典型倍增思想:我们从左端点开始,每次用倍增的思想去找到满足“校验值”不超过T最大的右端点,然后将左端点设置为右端点+1,按此思路继续进行即可。在这里介绍ST算法,ST算法能在O(NlogN)的时间的预处理之后,以 O(1)的复杂度完成查询操作,我们用f[i][j]表示从i到i+由此,我们可知状态转移方程:f[i][j]=max(f[i][j-1],f[i+1

2023-01-19 09:00:00 83

原创 算法竞赛进阶指南第七天

这道题用优先队列做,用一个大顶堆(a)和一个小顶堆(b)来维护排好序的数组的左半部分和右半部分,若大顶堆空,则将x入a,否则,拿x与a堆顶比较,比其小,则入a,否则入b,然后为了防止只有某一个堆很大,另一个堆为空,则仍需要比较,若b.size()>a.size(),则需要将b的堆顶弹出并放入a中,若a.size()>b.size()+1,则需要将a的堆顶弹出并放入b中。G[i]是C的前缀和,C数组原来表示每个人手上的牌数,我们可以让这个问题再简洁一点,我们让C[i]都减去。这时我们可以发现,这原来就是。

2023-01-16 15:41:33 80

原创 算法竞赛进阶指南第六天

可以这么想,设货舱左边有P个商店,右边有Q个商店,若PQ,那么总距离加P-Q,故P=Q最好。将A数组从小到大排序,然后将货仓建在中位数的位置即可。离散化问题,相当于自己实现一个简单的map。

2023-01-16 14:31:06 58

原创 算法竞赛进阶指南第五天

题目分析:目前已知最高的牛的身高,可以维护a数组,a[i]+最高的牛的身高表示第i头牛可能的最大身高,一开始a数组默认为0,当给出AB两头牛可以看见时,则将a[A+1]到a[B-1]的值全部减1,这个过程用差分思想来实现。典型的二分答案类型题,用h[i]表示第i片区域内的牛的个数,然后让每个元素减去二分的答案,问题划归为求一段序列中长度不小于F的序列的和最大,此问题用前缀和来解决。

2023-01-16 14:20:10 65

原创 算法竞赛进阶指南第四天

想让所有数列中的数都一样,即对于其的差分序列,b1可以为任意数=a1,b2-bn必须全为0,bn+1也可以为任意数,每次加1或减1相当于让b数组中的任意两个进行操作。基本前缀和问题,不赘述了。题目解析:很难讲清楚。

2023-01-04 12:05:59 58

原创 算法竞赛进阶指南第三天

没有mod的分配律,想mod需要用到逆元的知识,在这里采用分治方法。对等比数列进行奇偶的分类讨论,再结合快速幂进行计算。的柱子移动到另一根柱子上所需的最少步骤,d[i]表示将i个盘子借助数量为。对于本问:总共有四根柱子,故我们用 f[i]表示将i个盘子借助数量为。然后枚举每次将多少个盘子(是i-1呢还是i-2呢还是....)借助。我们可以发现这是几个等比数列和的乘积,但由于等比数列求和公式里。的柱子移动到另一根柱子上所需的最少步骤。根柱子移动到另一根柱子上即可。将A分解质因数得到公式。

2023-01-04 11:46:35 52

原创 算法竞赛进阶指南第二天

本题为一道递推题目,我们可以容易知道,如果前i行不能再被操作了,那第i行只能通过第i+1行的操作才能改动第i行,根据这个公理,我们枚举第1行所能执行的所有操作,即从0枚举到1

2023-01-04 11:02:34 62

原创 算法竞赛进阶指南第一天

对于任意非负整数n,将其取反,则n最低位1及其后面的0全部与~n相反,将其加1之后,前文所提部分变成了...1000000的样子,将(~n+1)&n即lowbit(n),又因为在补码状态下,~n=-n-1;我们定义f[i][j]表示“点被经过的状态“对应的二进制数为i(最低位为1表示编号为0的点被经过),当前处于点j时的最短路径,由此我们可知最终的答案为f[(1

2022-12-23 16:12:52 81

原创 C语言实现表达式的语法树生成

​紧跟上一篇计算器的文章,笔者这次基于完全相同的思想再做一个表达式语法树生成吧

2022-10-27 23:35:37 1363

原创 C语言实现计算器(基于EBNF表达式和递归下降思想)

之前笔者大一寒假闲来无事基于波兰表达式和平衡符号做了一个功能强大的计算器。最近编译原理的老师要求用递归下降的思想对表达式进行语法分析,笔者顺带完善了一点点计算的小功能

2022-10-27 23:29:31 612

原创 C++实现sysy语言的词法分析

200多行快速实现sysy的词法分析

2022-10-15 15:52:52 1536 2

原创 堆排序代码

堆排序

2022-07-19 16:01:25 201

原创 C++用栈实现计算器(正负小数+-*/^运算,表达式合法检测)

实现正负小数+-*/^运算,表达式合法检测的计算器

2022-07-16 10:12:07 1861

原创 C++手写栈,队列(常用数组实现)

手写栈,队列

2022-07-10 22:46:39 359

空空如也

空空如也

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

TA关注的人

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