Advertisement
1grMd

1 5 D 7

Mar 23rd, 2023
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.70 KB | None | 0 0
  1. def input_read():
  2.     n, r = [int(x) for x in input().split()]
  3.     monuments = [int(x) for x in input().split()]
  4.     return n, r, monuments
  5.  
  6.  
  7. def monuments_count(n, r, monuments):
  8.     count = 0
  9.     left = 0
  10.     right = 1
  11.     while True:
  12.         while right + 1 < n and monuments[right] - monuments[left] <= r:
  13.             right += 1
  14.         if monuments[right] - monuments[left - 1] > r:
  15.             count += left
  16.         while left < right and monuments[right] - monuments[left] > r:
  17.             left += 1
  18.             count += 1
  19.         if right + 1 >= n:
  20.             break
  21.     return count
  22.  
  23.  
  24. def main():
  25.     print(monuments_count(*input_read()))
  26.  
  27.  
  28. if __name__ == '__main__':
  29.     main()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement