fork(3) download
  1. n = int(input())
  2. maxdif = float(input())
  3. mas = [float(input()) for _ in range(n)]
  4. def lissage(mas):
  5. finalmas = []
  6. finalmas.append(mas[0])
  7. for i in range(1,len(mas)-1):
  8. finalmas.append((mas[i-1]+mas[i+1])/2)
  9. finalmas.append(mas[len(mas)-1])
  10. return finalmas
  11. def difcheck(mas):
  12. for i in range(len(mas)-1):
  13. if abs(mas[i]-mas[i+1]) > maxdif:
  14. return 1
  15. return 0
  16.  
  17. cnt = 0
  18. while difcheck(mas):
  19. mas = lissage(mas)
  20. cnt += 1
  21. print(cnt)
Success #stdin #stdout 0.1s 14080KB
stdin
7
1.120
1.292
1.343
3.322
4.789
-0.782
7.313
4.212
stdout
13