测评会员优惠活动进行中 · 开通 VIP,有效期内测评不限次 VIP 优惠中 · 测评不限次 立即查看

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)
上一题 下一题