import json,time import numpy as np L,W=4,2 def make(seed,K): r=np.random.default_rng(seed); E=[] for t in range(L): src=range(t*W,(t+1)*W) if t else [-1]; dst=range((t+1)*W,(t+2)*W) if ttarget*len(G): best=(1e99,None,None) for e,gs in enumerate(G): lo,hi,m=F[e] if len(gs)<2: continue old={id(g):blockcost(lo,m,g) for g in gs} for i in range(len(gs)): for j in range(i+1,len(gs)): a,b=gs[i],gs[j]; merged=a+b; d=blockcost(lo,m,merged)-old[id(a)]-old[id(b)] if mode=='regret': s=d*(1 if x0[e] else 0)+.05*d elif mode=='random': s=float((e*997+i*31+j)%1000) elif mode=='mass': s=-(m[a].sum()+m[b].sum()) else: span=max(max(hi[a]),max(hi[b]))-min(min(lo[a]),min(lo[b])); overlap=max(0,min(max(hi[a]),max(hi[b]))-max(min(lo[a]),min(lo[b]))) s=-overlap/max(span,1e-9) if s