- 博客(29)
- 收藏
- 关注
原创 一个简单文件系统
4)要求所设计文件文件系统ᨀ供以下文件操作:文件的创建 create、文件 的删除 delete、文件的打开 open、文件的关闭 close、读文件操作 read、写文 件操作 write。void creat_f(int i)//在第 i 个用户里边进行文件创建 void del_f(int i,int j)//第 i 个用户,第 j 个文件 char open_f()//文件的打开。(2) 文件读写 void read_f()//文件的读 void write_f()//文件的写。...
2022-08-10 09:41:01
765
1
原创 有 N 个进程并发执行系统 设计进程调度方案 C语言代码
如果在此一级时间片内完成,进程达到完成 F(Finish), 如果在此一级时间片内没有完成,则该进程进入第三级就绪队列中排队(就绪状 态 Wait),仍然采用先来先服务方式排队,在第三级就绪队列中获得 CPU 的进程, 其运行时间片的长度为第二级就绪队列时间片长度的两倍(即连续运行四个一级 就绪队列时间片),如果在此一级时间片内完成,进程达到完成 F(Finish)状态 退出,如果没有运行完毕,则重新回到第三级就绪队列排队等待调度。),进入队尾 ,改变状态为 ‘W’,同时将时间该队列的时间片设置为 0。..
2022-08-10 09:23:55
1374
原创 堆
性质:1 在形式上是完全二叉树(完全二叉树!=满二叉树。)完全二叉树,除了最后一行是满二叉树,最后一行可以不满,但是缺少的话,只可以从最后一行 的最右边 连着缺少若干结点。满二叉树,言外之意是每一行都满了。2 物理存储形式:采用数组的形式。3 编号:根据父节点的编号寻找左右结点的编号:左节点:2*n;右节点:2*n+1;根据任意节点寻找父节点:可能是左结点,也可能是右节点:不论左右结点,编号一律为:n/2 即:int /int 分类:1 大顶堆:顶点的值大于他左右儿子结点的数值。2 小顶堆:
2022-06-25 00:29:20
205
原创 质数
质数:在大于1的正整数中,如果只有1和本身两个约数,就是质数。或者叫素数。(1)判定素数——试除法1.1 时间复杂度O(N)数据范围2^31==2^10,运行超时会。这里是i
2022-06-24 20:31:30
148
原创 校庆
20192019 年浙江大学将要庆祝成立 122122 周年。为了准备校庆,校友会收集了所有校友的身份证号。现在需要请你编写程序,根据来参加校庆的所有人士的身份证号,统计来了多少校友。输入格式输入在第一行给出正整数 NN。随后 NN 行,每行给出一位校友的身份证号(1818 位由数字和大写字母 XX 组成的字符串)。题目保证身份证号不重复。随后给出前来参加校庆的所有人士的信息:首先是一个正整数 MM。随后 MM 行,每行给出一位人士的身份证号。题目保证身份证号不重复。输出格式首先在第一行输出参加校庆的校友的
2022-06-14 16:40:41
72
原创 回溯法总结
1 解空间树:不考虑任何条件,穷举所有情况的树结构(通常是满多叉树,但不尽然,总之列举所有情况就行)搜索空间树:解空间树在解空间树减枝后的空间树2 回溯法剪枝:目标函数和约束限制目标函数又称为界限函数约束条件约束函数是进行最优解的选择一般来说,所有的回溯法都有约束条件。只有最优解的情况时,约束函数。举例 :用到了目标函数,又用到约束函数的是 01背包问题只用到目标函数的是 八雪皇后3 回溯法是采用深度优先搜索的方式4 回溯法的解空间树可以分为:子集树 排序树子集树的时间复杂度O(2^N),举例:01背包排
2022-06-12 21:05:05
1490
原创 二维数组中的查找
vectord 需要特别判断是否为空注意: 判空分为两种定义vectord 相当于[] 属于一种空 等价于d.empty()[[] [] [] ] 属于另一种空 本来需要进行所有的数据都进行遍历,d[0~d.size()-1].empty()但是所有的长度都一致,所以只需要判断d[0].empty() ||只要是d.empty(),不需要d[0~d.size()-1].empty() ||后边只能够是的d[0].......
2022-06-10 22:49:57
79
原创 P1182 数列分段 Section II
题目描述对于给定的一个长度为N的正整数数列A_{1\sim N}A1∼N,现要将其分成MM(M\leq NM≤N)段,并要求每段连续,且每段和的最大值最小。关于最大值最小:例如一数列4\ 2\ 4\ 5\ 142451要分成33段。将其如下分段:[4\ 2][4\ 5][1][42][45][1]第一段和为66,第22段和为99,第33段和为11,和最大值为99。将其如下分段:[4][2\ 4][5\ 1][4][24][51...
2022-05-17 00:51:44
239
原创 圣
题目描述链接:登录—专业IT笔试面试备考平台_牛客网来源:牛客网给定 nnn 个数 aia_iai,求值:XORi=1nORj=1n(aiANDaj)\text{XOR}_{i=1}^{n}\text{OR}_{j=1}^{n}(a_i~\text{AND}~a_j)XORi=1nORj=1n(aiANDaj),其中符号XORi=1nai=(a1XORa2⋯XORan)\text{XOR}_{i=1}^{n}a_i=(a_1~\text{XOR}~a_2~\cdots~...
2022-05-08 17:24:24
460
原创 兔崽小孩
时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 262144K,其他语言524288K64bit IO Format: %lld题目描述叉同学虽然是wf爷,但平时傻愣愣的,游戏也玩不过九峰,经常被九峰取笑。有一次叉同学熬夜看球并在凌晨四点半和五点半连发两条说说,被早起水群的刘教主看到了,骂他道:"兔崽子,你这是玩通宵啊,不要命啦"。从此叉同学凌晨发说说总是慎之又慎,避免被骂。假设叉同学入睡需要k分钟,且他必须醒着才能发说说,刘教主早上醒来后发现他肯定没睡够...
2022-05-07 20:29:06
85
原创 802. 区间和
假定有一个无限长的数轴,数轴上每个坐标上的数都是00。现在,我们首先进行nn次操作,每次操作将某一位置xx上的数加cc。接下来,进行mm次询问,每个询问包含两个整数ll和rr,你需要求出在区间[l,r][l,r]之间的所有数的和。输入格式第一行包含两个整数nn和mm。接下来nn行,每行包含两个整数xx和cc。再接下来mm行,每行包含两个整数ll和rr。输出格式共mm行,每行输出一个询问中所求的区间内数字和。数据范围...
2022-05-05 22:25:39
563
原创 849. Dijkstra求最短路 I
给定一个 nn 个点 mm 条边的有向图,图中可能存在重边和自环,所有边权均为正值。请你求出 11 号点到 nn 号点的最短距离,如果无法从 11 号点走到 nn 号点,则输出 −1−1。输入格式第一行包含整数 nn 和 mm。接下来 mm 行每行包含三个整数 x,y,zx,y,z,表示存在一条从点 xx 到点 yy 的有向边,边长为 zz。输出格式输出一个整数,表示 11 号点到 nn 号点的最短距离。如果路径不存在,则输出 −1−1。数据范围1≤n≤5001≤n≤..
2022-05-05 20:42:17
148
原创 2003. 找到牛
奶牛贝茜逃跑了,躲在了长满高草的山脊上。农夫约翰为了抓回贝茜,决定在草地中匍匐前行,从而不被贝茜发现。不幸的是,发现贝茜并没有那么容易。约翰面前的草看起来像是一个长度为 NN 的括号字符串,例如:)((()())())约翰清楚贝茜的后腿看上去就像一对相邻的左括号 ((,她的前腿看上去就像一对相邻的右括号 ))。因此,贝茜的位置可以用一对索引 x<yx<y 来描述,使得 (( 在位置 xx 处被找到,)) 在位置 yy 处被找到。请计算贝茜可能站立的不同
2022-05-05 15:45:35
184
原创 837. 连通块中点的数量
给定一个包含nn个点(编号为1∼n1∼n)的无向图,初始时图中没有边。现在要进行mm个操作,操作共有三种:C a b,在点aa和点bb之间连一条边,aa和bb可能相等; Q1 a b,询问点aa和点bb是否在同一个连通块中,aa和bb可能相等; Q2 a,询问点aa所在连通块中点的数量;输入格式第一行输入整数nn和mm。接下来mm行,每行包含一个操作指令,指令为C a b,Q1 a b或Q2 a中的一种。输出格式对于每...
2022-05-04 22:19:34
198
原创 789. 数的范围
给定一个按照升序排列的长度为nn的整数数组,以及qq个查询。对于每个查询,返回一个元素 kk 的起始位置和终止位置(位置从 00 开始计数)。如果数组中不存在该元素,则返回 -1 -1。输入格式第一行包含整数 nn 和 qq,表示数组长度和询问个数。第二行包含 nn 个整数(均在 1∼100001∼10000 范围内),表示完整数组。接下来 qq 行,每行包含一个整数 kk,表示一个询问元素。输出格式共 qq 行,每行包含两个整数,表示所求元素的起始位置和终止位置。...
2022-05-04 19:37:17
67
原创 英语作文
英语作文比赛主页 我的提交时间限制:C/C++ 1秒,其他语言2秒空间限制:C/C++ 262144K,其他语言524288K64bit IO Format: %lld题目描述在写英语作文的时候,两个相同单词靠的太近肯定不好。现在 ZHR 给了你一段nn个单词的英文,问你有多少对相同单词中间间隔的单词数小于等于kk。输入描述:第一行两个整数,为nn 和 kk 。第二行nn个由仅小写字母组成的单词。每个单词长度小于等于1010 。1\le k \le...
2022-05-03 20:27:17
1942
原创 走迷宫题解
链接:登录—专业IT笔试面试备考平台_牛客网来源:牛客网题目描述Yuki Yuki喜欢探险。这天Yuki Yuki走到了一个迷宫里,这个迷宫是一个n*m大小的矩阵,但是仅有最外面的一圈可以通行,即第一行、第n行、第一列、第n列;Yuki Yuki正位于(1,1)处,她想在走出迷宫的同时又不失乐趣,所以她会按照顺时针方向每次走两步。迷宫中有许多神秘的传送门,走到传送门时,Yuki Yuki便会被往逆时针方向送回一格。现在Yuki Yuki想知道,她究竟能不能走出迷宫。输入描述:.
2022-04-30 23:27:08
934
原创 7-1 0-1背包
给定n(n<=100)种物品和一个背包。物品i的重量是wi(wi<=100),价值为vi(vi<=100),背包的容量为C(C<=1000)。应如何选择装入背包中的物品,使得装入背包中物品的总价值最大? 在选择装入背包的物品时,对每种物品i只有两个选择:装入或不装入。不能将物品i装入多次,也不能只装入部分物品i。输入格式:共有n+1行输入:第一行为n值和c值,表示n件物品和背包容量c;接下来的n行,每行有两个数据,分别表示第i(1≤i≤n)件物品的重量和价值。输出格
2022-04-20 17:31:32
1027
原创 分治法与减治法
一 时间复杂度:分治法O(nlogn)减治法O(logn)二 本质联系:都是采用分区间,递归三本质区别:减治法本质上是简化的分治法。减治法是将分治法形成的两个区间,肯定答案是在一个区间,再进行递归答案所在的区间,答案不在的区间不再进行递归处理。分治法没有确定答案所在的区间,需要将两个区间都进行递归处理。四应用举例分治法:快排减治法:第k大值...
2022-04-18 16:11:17
2780
2
原创 数据加强的快排模板
标准:函数实现:void quick_sort(int v[],int l,int r){ if(l>=r)return ; int pos=v[(l+r)>>1],i=l-1,j=r+1; while(i<j) { while(v[++i]<pos); while(v[--j]>pos); if(i<j)swap(v[i],v[j]); } quick_sort(v,l,j); quick_sort(v,
2022-04-17 21:28:27
85
原创 7-2 输油管道问题
某石油公司计划建造一条由东向西的主输油管道。该管道要穿过一个有n 口油井的油田。从每口油井都要有一条输油管道沿最短路经(或南或北)与主管道相连。如果给定n口油井的位置,即它们的x 坐标(东西向)和y 坐标(南北向),应如何确定主管道的最优位置,即使各油井到主管道之间的输油管道长度总和最小的位置? 证明可在线性时间内确定主管道的最优位置。给定n口油井的位置, 计算各油井到主管道之间的输油管道最小长度总和。输入格式:输入的第1 行是油井数n,1<=n<=10000。接下来n 行是油井的
2022-04-17 21:09:47
750
原创 7-1 求最大元素值
n个元素的数组的最大元素可以用递归计算出来。定义方法:int max(int x, int y) 它返回x和y两个整数中的较大值。试用递归编写方法:int arraymax(int[] a, int n) 它使用递归返回数组a的最大元素值。终止条件:n==2递归步骤:arraymax=max(max(a[0],...,a[n-2]), a[n-1])输入格式:第一行的第一个元素是输入元素个数n (1<n<=30),第二个元素之后是输入n个元素;输出格式:按格式要求输出相邻
2022-04-16 15:04:04
328
原创 P1595 信封问题
知识点:(1)全排列,假设一共有n个人,则有n的阶乘的排列方式。(n)!(2)圆排列,将n个人排在圆桌上一共有几种排列方式。(n-1)! 圆排列与全排列的区别在于,圆排列一种排列方式,并且从一个固定的点打开,每次顺时针 旋转一个点,旋转n次回出现n种结果,但是对于圆排列来说只是一种结果。按照这样的方式 不断地拆分会成为全排列。因此圆排列的排列方式一共具有n的阶乘除以n个。即有(n-1)!的排 列方式。(3)卡特兰数卡...
2022-04-12 09:00:00
300
原创 34. 在排序数组中查找元素的第一个和最后一个位置
s难度中等1600给定一个按照升序排列的整数数组nums,和一个目标值target。找出给定目标值在数组中的开始位置和结束位置。如果数组中不存在目标值target,返回[-1, -1]。进阶:你可以设计并实现时间复杂度为O(log n)的算法解决此问题吗?示例 1:输入:nums = [5,7,7,8,8,10], target = 8输出:[3,4]示例2:输入:nums = [5,7,7,8,8,10], target = 6输出:[-1,...
2022-04-10 16:35:59
39
原创 试题 B: 卡片
【问题描述】 小蓝有很多数字卡片,每张卡片上都是数字 0 到 9。 小蓝准备用这些卡片来拼一些数,他想从 1 开始拼出正整数,每拼一个, 就保存起来,卡片就不能用来拼其它数了。 小蓝想知道自己能从 1 拼到多少。 例如,当小蓝有 30 张卡片,其中 0 到 9 各 3 张,则小蓝可以拼出 1 到 10, 但是拼 11 时卡片 1 已经只有一张了,不够拼出 11。 现在小蓝手里有 0 到 9 的卡片各 2021 张,共 20210 张,请问小蓝可以从 1 拼到多少?提示:建议使用计算机编程解决问题。【
2022-04-08 16:50:33
471
2
原创 不做最后一个
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录题目 一、输入输出样例,数据范围 二、代码 总结题目农夫约翰有77头奶牛:Bessie,Elsie,Daisy,Gertie,Annabelle,Maggie,Henrietta。他每天都给它们挤奶,并详细记录每次挤奶过程中每头牛的产奶量。毫无疑问,产奶量大的奶牛会受到约翰的高度赞扬。牛是一种懒惰的动物,并不愿意产出过多的牛奶。对于它们来说,每头牛都十分乐意成为牛群中产奶量最低的...
2022-04-07 13:00:29
223
原创 二进制中1的个数
文章目录题目 数据范围 输入输出 算法 代码 总结前言二进制中1的个数提示:以下是本篇文章正文内容,下面案例可供参考一、题目给定一个长度为nn的数列,请你求出数列中每个数的二进制表示中11的个数。输入格式第一行包含整数nn。第二行包含nn个整数,表示整个数列。输出格式共一行,包含nn个整数,其中的第ii个数表示数列中的第ii个数的二进制表示中11的个数。二、数据范围1≤n≤1000001≤n≤10...
2022-04-05 21:53:03
263
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人