A27613. 挑选礼物编程实现小猴家里有一片香蕉林,由于小猴的好朋友小美快要过生日了,小猴打算在一排共n棵香 蕉树中选择两颗香蕉树作为小美的生日礼物,为了显得不是那么随意,小猴认为选取的 两棵香蕉树的距离不能超过d ,但是方案太多了,小猴想要先知道一共有多少种选择的 方案。已知一排香蕉树的位置坐标依次为 x1,x2,x3......xn,请你帮助小猴计算一下选择两棵距离 不超过d的香蕉树的方案有多少种。注意:…
填空题
中等
知识点
题目描述
挑选礼物
编程实现
小猴家里有一片香蕉林,由于小猴的好朋友小美快要过生日了,小猴打算在一排共n棵香 蕉树中选择两颗香蕉树作为小美的生日礼物,为了显得不是那么随意,小猴认为选取的 两棵香蕉树的距离不能超过d ,但是方案太多了,小猴想要先知道一共有多少种选择的 方案。
已知一排香蕉树的位置坐标依次为 x1,x2,x3......xn,请你帮助小猴计算一下选择两棵距离 不超过d的香蕉树的方案有多少种。
注意:方案xi、xj 和方案xj、xi 认为是同一种方案。
输入描述
第一行,包含一个整数 n ( 1≤n≤5000 )。 第二行,包含 n 个整数 x1,x2,x3......xn。 第三行,包含一个整数 d 。
输出描述
一行,包含一个整数,表示结果。
输入样例
5
5 16 3 20 13
10
输出样例
6
参考答案
n = int(input())
x = list(map(int, input().split()))
d = int(input())
x.sort() # 将香蕉树位置从小到大排序
ans = 0
fori inrange(n):
j = i + 1 # j指向i的下一个位置
whilej < n andx[j] - x[i] <= d:
ans += 1
j += 1
print(ans)
上一题
下一题