06 2024 档案
摘要:比赛链接:牛客周赛49 赛时感受 A 思路 直接计算 代码 #include <bits/stdc++.h> using namespace std; #define ll long long const int N = 1e5 + 10; int main() { ll a, b; cin >>
阅读全文
摘要:比赛链接:牛客小白月赛97 A 思路 代码 #include <bits/stdc++.h> using namespace std; #define ll long long const int N = 1e5 + 10; int num[N]; int main() { int n; cin >
阅读全文
摘要:1.2.1 计算机系统的组成 软件系统和硬件系统共同构成了一个完整的计算机系统。硬件是计算机系统发挥其功能的物质基础,计算机系统中实际物理装置的总称,软件是指令集合,是计算机的灵魂,是指在硬件上运行的程序和相关的数据和文档。 计算机系统的性能的好坏,很大程度上由软件的效率和作用决定的,软件性能的发挥
阅读全文
摘要:计算机的发展 计算机系统 = 计算机软件 + 计算机硬件 1.1.1 计算机的硬件发展 计算机的发展经历了四代: 第一代计算机--电子管时期 即为逻辑元件采用电子管,使用机器语言和汇编语言编程,主存储器用磁鼓或者延迟线,数据主要用定点数表示,容量小,成本高,性能低,体积大,但是为计算机的发展奠定了基
阅读全文
摘要:1.在数据库设计中,一个多对多的关系可通过一个中间表分成两个一对多的关系。
阅读全文
摘要:程序计数器和指令寄存器的位数分别取决于存储器的字数和指令字长。 RISC一定采用流水线技术,CISC兼容性大于RISC,RISC的寄存器更多,寻址方式少,指令种类固定,指令种类少。 指令格式规整且长度一致,指令和数据按边界对齐存放都有利于实现指令流水线。 计算机硬件能够直接执行的是机器语言程序。计算
阅读全文
摘要:比赛链接:牛客周赛48 A 思路 因为只能+1,所以选择最大的数字作为三个数字操作后的重点,所以求出最后的结果为max(a, b, c) * 3,再减去当前的数字大小就可以知道需要操作多少次了。 代码 #include <bits/stdc++.h> using namespace std; #de
阅读全文
摘要:事务 事务:用户定义的一个数据库操作序列,这些操作要么全部不做,要么全做,是一个不可分割的工作单位。 事务的特性:一致性,原子性,持续性,隔离性 数据独立性 数据独立性分为物理独立性和逻辑独立性 物理独立性:应用程序和在磁盘上保存的数据库中的数据是互相独立的。 逻辑独立性:用户的应用程序与数据库的逻
阅读全文
摘要:题目链接:油滴扩展 思路 枚举油滴滴下的顺序,然后依次判断每个油滴扩展的半径。然后每次计算出当前油滴能扩散的最大半径,通过使用当前油滴与边长的距离。 代码 #include <bits/stdc++.h> using namespace std; const int maxn = 10; const
阅读全文
摘要:题目链接:中位数 思路 由于需要查询的是输入奇数个数字时的中位数,所以可以将输入的第一个数字初始化为默认的mid,然后再输入数据时将小于mid的元素加入大根堆,大于等于mid的元素加入小根堆,当输入到奇数个元素时,就可以判断当前大小根堆中的元素个数是否相等,相等则可以输出当前的mid,否则将mid加
阅读全文
摘要:题目链接:ST表 思路 ST表是基于DP实现的区间查询最值(RMQ问题),但是ST表是静态查询不支持修改数据,查询的时间复杂度为O(1),预处理的时间复杂度为O(logn)。dp[i][j]表示以i为起点,包含2^j个数的区间中的dp值。 代码 #include <bits/stdc++.h> us
阅读全文
摘要:题目链接:导弹拦截 思路 代码 #include <bits/stdc++.h> using namespace std; const int N = 1e5 + 5; int a[N], x, l, dp[N], maxn; int g[N], cnt; int main() { while (c
阅读全文
摘要:Python中的属性主要分为类属性,对象属性。 1.类属性 类属性:类所有,所有的实例对象都能够共享,类定义时就直接指定的属性,能通过类名和实力对象名访问,当当前的类属性被实例对象通过对象名.属性名的形式调用之后,当前对象就会多出一个实例属性,此后使用对象名.属性名的形式调用的就是对象属性,因为对象
阅读全文
摘要:Python中有三种比较常见的方法类型,如类方法和静态方法,实例方法,他们是面向对象编程中重要的概念。 1.类方法 类方法是通过使用装饰器@classmethod来定义的,他的第一个参数是cls,指向类本身,允许我们在方法中操作类的属性或调用其他类方法。 类方法的使用:类方法可以通过类名和实例对象来
阅读全文
摘要:比赛链接:牛客周赛47 赛时感受 又是一场思维题,应该只有EF有点算法,E需要使用快速幂和取余,F做不出,C卡了我一下,D写完了,E不写完一半又回来看C才做掉的,E也卡了很久虽然鸽巢原理想到了,但是没想到被卡在取余问题上,一开始没想出来,去做F然后做了半个小时发现做不掉,又回来在E上做功夫。 A 思
阅读全文
摘要:题目链接:最大子树和 思路 由于可以无限剪枝,所以假设以节点1为根,并删去所有美丽质数小于0的子树,又考虑到可能会出现根节点为负数,导致可能会只留下子树而把节点1为根节点的其他部分扔掉,所以需要dp数组记录,dp[i]为以节点i为根节点能得到的最大的美丽指数,贪心将节点i的子树中所有美丽指数之和小于
阅读全文
摘要:题目链接:填涂颜色 思路 因为需要找出被所有1围住的0,但是发现直接查找会比较麻烦,会需要搜索判断四个方向都被1包围,然后还要再次搜素给这些0赋值。但是如果反向思维把不被1包围的0全部找出来剩下的就是被1包围的0了,可以使用搜索从在正方形边界上的0开始搜索,将所有能搜到的0全部标记,剩下的就是被1包
阅读全文
摘要:题目链接:Entertainment in MAC 思路 当当前操作次数n为偶数时,若原字符串大于反转字符串则可以将原字符串反转n - 2次,则得到的还是原字符串,此时反转一次,并将其再次反转的字符串加到反转字符串的末尾,此时得到词典最小的字符串,源字符串小于反转字符串时,直接将原字符串反转n次得到
阅读全文
摘要:题目链接:数字三角形 思路 dp:金字塔顶的元素为起点,金字塔每行的最左侧数字只能从上一层的最左侧数字到达,如7 -> 3 -> 8 -> 2 -> 4,这些数字中的每一个(除起点7外)都只能从上一层的最左侧数字到达,递推公式为dp[i][1] = max(dp[i][1], num[i][1] +
阅读全文
摘要:题目链接:自动刷题机 思路 二分典题,两个二分判断出可能的最大值和最小值。需要注意当删掉y行代码后,当前代码行数小于0时需要将代码行数重新赋值为0,然后需要注意二分的n最大值的边界,因为x[i]的最大值为1e9,日志最多有1e5行,所以考虑极限情况,日志每一行都是写了1e9行代码,所以最大n可能为1
阅读全文
摘要:题目链接:快速幂 思路 简单快速幂模板。a ^ 17 = (a ^ 2) ^ 8 * a,此时pow()中的y就可以视为17 -> 8(y >>= 1),pow()中的x就是底数a -> a ^ 2(x *= x),结果res可以视为在循环时多出来的后边乘的a,1 -> a(res *= x),简单
阅读全文
摘要:题目链接:歌唱比赛 思路 根据题目分析可得,假如小x的点赞数是123111,小y的点赞数是234111,则字符串的第4为到第6位结果都为Z,分别为对比(111,111),(11,11),(1,1),字符串的第三位为Y,为对比(3111,4111),则结果字符串为YYYZZZ。 此时可以轻易判断出字符
阅读全文
摘要:题目链接:激光炸弹 思路 看到消灭一个正方形内的所有目标就会想到二维前缀和。输入的x, y可能相同,所以同一个位置可能会有多个目标所以在初始化的时候需要使用dp[x + 1][y + 1] += v;,而不是dp[x + 1][y + 1] = v。为了使得二维前缀和计算的时候不会数组越界,所以将地
阅读全文
摘要:比赛链接:牛客小白月赛96 赛时感受 赛时在前面卡的时间有点长,C题没开longlong wa了n发,D题没考虑负数又wa了n发,然后来写E的时候时间就不长了,匆忙写一次交一发。 A 思路 当其中一个人解题数达到6时,则不可能使得令一方反超,输出-1,其他情况只需要另一方多解除两个题目即可反超。 题
阅读全文
摘要:比赛链接:牛客周赛46 赛时感受 本场参加的是内测,多亏了内测群的佬提供的思路,得以AK。 ABC都是简单的签到题,D稍微需要分类一下,EF有点算法知识,E可以使用前缀和+二分搜索过掉,但是听说好像还能使用离散化树状数组等等,F是数学知识,隔板法和求质数、求组合。 一开始脑袋懵了,以为C题的数据太大
阅读全文
摘要:题目链接:二叉树深度 思路 存储二叉树的各个节点并递归搜索二叉树深度。 题解 #include <bits/stdc++.h> using namespace std; #define ll long long const int N = 1e5 + 10; struct binary { int
阅读全文
摘要:题目链接:二叉苹果树 思路 本题使用链式向前星存储树上的边,然后DFS搜索+简单dp。 dp数组,dp[i][j]表示节点i及其子树保留k根树枝得到的最大苹果数。son数组存储当前节点的孩子节点的编号和当前节点与孩子节点之间的树枝上的苹果个数。 对于dp递推公式,我们可以对每一个节点逐个分析,对于每
阅读全文
摘要:题目链接:没有上司的舞会 思路 这是一道树形dp的入门题,也可以用DFS+记忆化搜索来理解,要注意的地方是,输入关系时先输入的l为后输入的k的下属,所以存储边时需要注意。 在面对图论或者树的存储时通常可以使用链式向前星(如下代码中的add函数)或者STL中的vector存储边。 链式向前星和vect
阅读全文
摘要:题目链接:八皇后 思路 这是一个典型的搜索题目,从前往后依次枚举行数,从第一行开始依次枚举皇后的纵坐标,并判断当前坐标是否满足题目要求,满足题目要求则标记将答案存储,并继续向下枚举下一行。 由分析可得每条对角线上的任意一点的横纵坐标满足公式i - j + n的值与对角线上其他点的公式值相等,n为棋盘
阅读全文