选择题 共15道
判断题 共10道
编程题 共2道
关于下述代码,说法错误的是( )。
执行下述代码将输出( )。
执行下述代码后,变量 a 的值为( )
执行下述代码,将输出( )。
给定如下代码
下面描述错误的是( )。
小杨正在爬楼梯,需要爬 阶才能到达楼顶。如果每次可以爬 个或 个台阶,下面代码采用递推算法来计算一共有多少种不同的方法可以爬到楼顶,则横线上应填写( )。
给定如下算法,其时间复杂度为( )。
运行下面的代码,将出现( )。
考虑最坏情况下冒泡排序算法的时间复杂度,
为待排序数字的数目为 的复杂度,则其递推关系式为
时间限制: 10 s
内存限制: 512.0 MB
题面描述
小杨有一大片荒地,可以表示为一个 n 行 m 列的网格图。
小杨想要开垦这块荒地,但荒地中一些位置存在杂物。对于一块不存在杂物的荒地,该荒地可以开垦当且仅当其上左右四个方向相邻的格子均不存在杂物。
小杨可以选择至多一个位置,清除该位置的杂物,移除杂物后该位置变为荒地。小杨想知道在清除至多一个位置的杂物的情况下,最多能够开垦多少块荒地。
输入格式
第一行包含两个正整数 n, m,含义如题面所示。
之后 n 行,每行包含一个长度为 m 且仅包含字符 . 和 # 的字符串。如果为 . ,代表该位置为荒地,如果为 # ,代表该位置为杂物。
输出格式
输出一个整数,代表在清除至多一个位置的杂物的情况下,最多能够开垦的荒地块数。
样例
输入样例1
3 5 ..... .#..# .....
输出样例1
11
样例解释
移除第二行从左数第二块空地的杂物后
..... ....# .....
第一行从左数前4块荒地,第二行从左数前3块荒地,第三行从左数前4块荒地,均可开垦,4+3+4=11
数据范围
对于全部数据,保证有1<=n,m<=1000
题目描述
小A有一个 n 行 m 列的矩阵 A。
小A认为一个 2×2 的矩阵 D 是好的,当且仅当 D1,1 × D2,2 = D1,2 × D2,1其中 Di,j 表示矩阵 D 的第 i 行第 j 列的元素。
小A想知道 A 中有多少个好的子矩阵。
第一行,两个正整数 n, m。
接下来 n 行,每行 m 个整数 Ai,1, Ai,2, ..., Ai,m
一行,一个整数,表示 A 中好的子矩阵的数量。
输入样例 1
3 4 1 2 1 0 2 4 2 1 0 3 3 0
输出样例 1
2