import heapq def aa(seg,m): while m>1: m//=2;seg[m]=min(seg[m*2],seg[m*2+1]) def bb(seg,l,r): res=1<<60 while lc and a[i]>hq1[0][0]: ans=min(ans,a[i]+c+hq1[0][0]) ans=min(ans,a[i]+bb(seg1,x[a[i]]+1+v,v*2)+bb(seg2,x[a[i]]+1+v,v*2)) seg2[x[a[i]]+v]=1<<60;aa(seg2,x[a[i]]+v) seg1[x[a[i]]+v]=a[i];aa(seg1,x[a[i]]+v) if ans==1<<60: ans=-1 print(ans)