151692025-02-14 17:42:0442A Barbárpypy3Elfogadva 100/100702ms172332 KiB
from sys import stdin
input=stdin.readline

def solv():
 N=int(input())
 D=list(map(int, input().split()))
 if N==1:
  print(0)
  return

 s=[0]*N
 s[0]=0
 s[N-1]=N-1

 S=[0]
 for i in range(1,N-1):
  if D[i]-D[i-1]<=D[i+1]-D[i]:
   while S[-1]>0 and D[S[-1]]-D[S[-1]-1]<=D[i+1]-D[S[-1]]:
    S.pop()
   s[i]=S[-1]
  S.append(i)
 S=[N-1]
 for i in range(N-2,0,-1):
  if D[i+1]-D[i]<D[i]-D[i-1]:
   while S[-1]<N-1 and D[S[-1]+1]-D[S[-1]]<D[S[-1]]-D[i-1]:
    S.pop()
   s[i]=S[-1]
  S.append(i)

 def find(i):
  if s[i]==i:
   return i
  else:
   s[i]=find(s[i])
   return s[i]

 for i in range(N):
  print(N-1-find(i),end=' ')
 return

solv()
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva68ms47720 KiB
2Elfogadva71ms40204 KiB
subtask212/12
3Elfogadva43ms19684 KiB
4Elfogadva45ms19724 KiB
5Elfogadva43ms19764 KiB
6Elfogadva48ms21260 KiB
7Elfogadva50ms21216 KiB
8Elfogadva48ms21424 KiB
9Elfogadva45ms21184 KiB
10Elfogadva43ms21404 KiB
11Elfogadva41ms19788 KiB
12Elfogadva43ms21276 KiB
subtask328/28
13Elfogadva56ms22480 KiB
14Elfogadva63ms21884 KiB
15Elfogadva59ms22916 KiB
16Elfogadva64ms22428 KiB
17Elfogadva64ms21732 KiB
18Elfogadva57ms21476 KiB
19Elfogadva54ms21472 KiB
20Elfogadva57ms21768 KiB
21Elfogadva56ms21480 KiB
subtask435/35
22Elfogadva145ms38156 KiB
23Elfogadva165ms39140 KiB
24Elfogadva149ms38160 KiB
25Elfogadva172ms37524 KiB
26Elfogadva142ms29668 KiB
27Elfogadva119ms36180 KiB
28Elfogadva115ms36256 KiB
29Elfogadva101ms36308 KiB
30Elfogadva112ms35708 KiB
31Elfogadva148ms36780 KiB
subtask525/25
32Elfogadva574ms162520 KiB
33Elfogadva570ms144776 KiB
34Elfogadva702ms165544 KiB
35Elfogadva518ms142352 KiB
36Elfogadva601ms150368 KiB
37Elfogadva446ms146356 KiB
38Elfogadva446ms155644 KiB
39Elfogadva519ms153160 KiB
40Elfogadva467ms153012 KiB
41Elfogadva615ms172332 KiB
42Elfogadva508ms149296 KiB
43Elfogadva542ms154468 KiB
44Elfogadva580ms165260 KiB
45Elfogadva555ms139672 KiB
46Elfogadva547ms139464 KiB
47Elfogadva574ms170664 KiB
48Elfogadva643ms159028 KiB
49Elfogadva555ms154128 KiB
50Elfogadva632ms170676 KiB