求助dalao python 二分法得 8 分
  • 板块P1102 A-B 数对
  • 楼主zzzxns1
  • 当前回复0
  • 已保存回复0
  • 发布时间2023/4/6 01:03
  • 上次更新2023/10/23 19:17:46
查看原帖
求助dalao python 二分法得 8 分
929115
zzzxns1楼主2023/4/6 01:03
n,c = map(int,input().split())
a = list(map(int,input().split()))
b = sorted(a)

cnt = 0
# A = B + C
def ef(l,r,n):
    global cnt
    while l < r:
        mid = (l + r) // 2
        if b[mid] >= n:
            r = mid
        else:
            l = mid + 1
    if l == r:
        if b[l] == n:
            cnt += 1
        else:
            cnt = cnt
        
for i in range(len(b)):
    d = b[i] + c
    ef(0,len(b)-1,d)
print(cnt)
2023/4/6 01:03
加载中...