下列选项中,()是减法运算符。
-
/
*
%
下列选项中,()属于条件语句的关键字。
def
if
for
while
运行下面程序,输出的结果是()。
S='Python'
print(S[1])
P
y
o
n
运行下面程序,输出的结果是()。
lis=[1,2,3,4,5,6]
lis.insert(2, 7)
print(lis)
[1,2,3,4,5,6,7]
[1,2,7,3,4,5,6]
[1,2,3,4,5,6,2,7]
[1,7,2,3,4,5,6]
定义 fun函数如下,下列选项中,能正确调用 fun函数的是()。
def fun(p1, p2, p3='B', *p4):
print(p1)
print(p2)
print(p3)
print(p4)
fun(1, p3='C', p5=1)
fun(1, p3='C', 2, 3)
fun('p1','p3'='C')
fun(1,2,3, p2='C','A'=1)
编程实现:
给定一个整数 N,输出比 N 大 1 的整数。
例如:N = 4;比 4 大 1 的整数是 5。
输入描述:
输入一个整数 N(1≤N≤100)。
输出描述:
输出一个整数,表示比 N 大 1 的整数。
样例输入:
4
样例输出:
5
编程实现:
给定一个字符串 S,输出 S 的最后一个字符。
例如:S = 'abcd';'abcd' 的最后一个字符是 'd'。
输入描述:
输入一个字符串 S(2≤S 的长度≤100)。
输出描述:
输出一个字符,表示 S 的最后一个字符。
样例输入:
abcd
样例输出:
d
编程实现:
小明将黄色和蓝色的正方形卡片按如下规律摆放:
给定一个整数 N,按照规律计算第 N 行有多少张黄色卡片。
例如:N = 5;第 5 行有 3 张黄色卡片。
输入描述:
输入一个整数 N(5≤N≤1000)。
输出描述:
输出一个整数,表示第 N 行有多少张黄色卡片。
样例输入:
5
样例输出:
3
编程实现:
有 n 块长度不同的积木从左到右排成一排,现需要将所有积木按照以下要求堆放在 A、B 位置,A、B 位置初始没有积木。
堆放要求:
1)从左到右依次拿取积木堆放在 A 位置或 B 位置的顶部,且堆放后不能再改变该积木位置;
2)堆放过程中,如果该位置没有积木,那么可以直接堆放拿取的积木;如果该位置有积木,只有拿取的积木长度小于该位置顶部的积木时,才可以堆放。
提示:所有积木堆放完后 A 位置或 B 位置可以没有积木。
例如:n = 2;从左到右 2 块积木的长度依次为 2、1,如下图所示:
按要求,从左到右先堆放长度为 2 的积木,再堆放长度为 1 的积木,有如下 4 种不同的堆放方法:
第一种:先将长度为 2 的积木堆放在 A 位置,因为 1 小于 2,再将长度为 1 的积木堆放在 A 位置顶部;
第二种:先将长度为 2 的积木堆放在 A 位置,再将长度为 1 的积木堆放在 B 位置;
第三种:先将长度为 2 的积木堆放在 B 位置,再将长度为 1 的积木堆放在 A 位置;
第四种:先将长度为 2 的积木堆放在 B 位置,因为 1 小于 2,再将长度为 1 的积木堆放在 B 位置顶部。
给定一个整数 n,以及从左到右 n 块积木的长度,请计算堆放完所有积木,一共有多少种不同的堆放方法;
如果按要求没有一种方法能堆放完所有积木,则输出 0。
输入描述:
第一行输入一个整数 n(1≤n≤20),表示积木数量;
第二行输入 n 个不同的整数(1≤整数≤30),分别表示从左到右每块积木的长度,整数之间以一个空格隔开。
输出描述:
输出一个整数,表示一共有多少种不同的堆放方法;如果按要求没有一种方法能堆放完所有积木,则输出 0。
样例输入:
2
2 1
样例输出:
4
编程实现:
有一块矩形土地被划分成 n 行 m 列的网格,每个网格生长一种植物。如果相邻(上、下、左、右)网格生长的植物相同,那么这些网格的植物归为同一片植物林;如果一个网格与相邻网格生长的植物都不同,那么该网格的植物单独为一片植物林。
例如:n = 3,m = 4;3 行 4 列的网格生长的植物如下:
一共有 5 片植物林(已用不同颜色的线条圈出),如下图所示:
给定 n 行 m 列的网格中生长的植物,请找出一共有多少片植物林。
输入描述:
第一行输入两个整数 n、m(1≤n、m≤100),表示这块矩形土地被划分成的网格行数和列数,整数之间以一个空格隔开;
接下来输入 n 行,每行 m 个整数(1≤整数≤10000),表示每个网格的植物,不同的整数表示不同的植物,相同的整数表示相同的植物,整数之间以一个空格隔开。
输出描述:
输出一个整数,表示这块矩形土地一共有多少片植物林。
样例输入:
3 4
1 2 2 1
1 1 2 1
3 3 3 2
样例输出:
5