小团是某综艺节目的策划,他为某个游戏环节设计了一种晋级规则,已知在这个游戏环节中每个人最后都会得到一个分数score_i,显而易见的是,游戏很有可能出现同分的情况,小团计划该环节晋级人数为x人,则将所有人的分数从高到低排序,所有分数大于等于第x个人的分数且得分不为0的人都可以晋级。
请你求出本环节的实际晋级人数。显然这个数字可能是0,如果所有人的得分都是0,则没有人满足晋级条件。
输入描述:
输入第一行包含两个正整数n和x,分别表示参加本环节的人数,和小团指定的x。
输入第二行包含n个整数,每个整数表示一位选手的得分。
输出描述:
输出仅包含一个整数,表示实际晋级人数。
输入例子1:
5 4
0 0 2 3 4
输出例子1:
3
分析:如果在第x人之前存在分数相同的情况,则晋级人数可能会大于x。
result_ls = []
while True:
try:
n, x = map(int, input().split())
n_ls = list(map(int, input().split()))
n_ls.sort(reverse=True)
#print(n_ls)
y = n - 1
num = n_ls[x-1]
flag = False
while y > 0:
if n_ls[y] == 0:
y -= 1
else:
result_ls.append(y + 1)
flag = True
break
if not flag:
result_ls.append(0)
except Exception as e:
#print(e)
break
for _ in result_ls:
print(_)