蓝桥杯历届试题总结
时间计算
可用Excel:将时间写入单元格
第一种方法 =A1-A2
第二种方法 =DATEDIF(A1,A2,"D")//D可改为M,Y;
二叉树
二叉树的性质:
1.完全二叉树和满二叉树
满二叉树是一个完整的三角形,而完全二叉树是一个底部缺省的三角形。
2.二叉树的第i层上最多有2^(i-1)个节点。
3.深度为k的二叉树最多有2^k-1个节点
4.对于一棵二叉树,若其叶子节点为n0,度为2的节点为n2,则n0=n2+1;
一棵包含有2019个结点的二叉树,最多包含多少个叶结点?
n0+n0-1=2019;
n0=1010
无向连通图
完全图:有 n(n-1)/2 条边的无向图。其中n是结点个数。必定是连通图。
有向完全图:有n(n-1)条边的有向图。其中n是结点个数。每两个顶点之间都有两条方向相反的边连接的图。
数位处理
int number;
while(number)
{
int bit=number%10;//获取最低位
number/=10;
}
int number;
number%10;//个位
number/10%10;//十位
number/100%10;//百位
取余
如下的10行数据,每行有10个整数,请你求出它们的乘积的末尾有多少个零?*
*给定数列 1, 1, 1, 3, 5, 9, 17, …,从第 4 项开始,每项都是前 3 项的和。求
第 20190324 项的最后 4 位数字。
整个20世纪(1901年1月1日至2000年12月31日之间),一共有多少个星期一?
在大数计算的过程中,关注输出的部分是一个剪枝的小技巧。
联通块
较深的连通块常采用宽度优先搜索,防止递归过深爆栈
你有一张某海域NxN像素的照片,"."表示海洋、"#"表示陆地,如下所示:
其中"上下左右"四个方向上连在一起的一片陆地组成一座岛屿。例如上图就有2座岛屿。
由于全球变暖导致了海面上升,科学家预测未来几十年,岛屿边缘一个像素的范围会被海水淹没。具体来说如果一块陆地像素与海洋相邻(上下左右四个相邻像素中有海洋),它就会被淹没。
例如上图中的海域未来会变成如下样子:
请你计算:依照科学家的预测,照片中有多少岛屿会被完全淹没。
通过比较每一个小连通块的数量和该连通块将会被淹没的块数的数量,得出该连通块是否会被淹没。
验证连通块的数量也可使用类似的方法,利用bfs标记一个连通块,然后计数即可。
字符串的处理
参见KMP
动态规划
DFS
并查集