[题目描述]
有n个不同的数,从小到大排成一列。现在告诉你其中的一个数x,x不一定是原先数列中的数。你需要输出最后一个<=x的数在此数组中的下标。
输入:
输入共两行第一行为两个整数n、x。第二行为n个整数,代表a[i]。
输出:
请你输出最后一个<=x的数在此数组中的下标。
样例输入1
5 4
1 2 5 13 16
样例输出1
2
来源/分类(难度系数:一星)
完整代码展示:
a,b=map(int,input().split())
c=list(map(int,input().split()))
d=[]
for j in range(0,len(c)):
if c[j]<=b:
d.append(j+1)
print(d[-1])
代码解释:
“a,b=map(int,input().split()) ”,让用户输入总元素的个数a及需要比较的数值b。
“c=list(map(int,input().split())) ”,让用户输入数列中的各元素,并将其储存在列表c中。
“d=[]
for j in range(0,len(c)):
if c[j]<=b:
d.append(j+1) ”,建立一个空列表d,依次遍历列表c中元素,如果该元素小于等于b,则将其下标添加进列表d中。
“print(d[-1]) ”,打印列表d的最后一项,即小于等于b的最后一个元素的下标。
运行效果展示:
(声明:以上内容均为原创)