=LET(s,G2:H2,l,MAX(s),w,MIN(s),ls,A2,ps,TOROW(B2:B4),fs,TOROW(C2:C4),es,TOROW(D2:D4),gn,LAMBDA(tl,LET(f,LAMBDA(rs,r,tl,ls,n,IF(OFFSET(ls,1,)=0,IF(MOD(tl,ls)=0,VSTACK(rs,HSTACK(r,tl/ls)),rs),LET(cl,tl-ls*n,IF(cl=0,VSTACK(rs,HSTACK(r,n)),IF(cl>0,f(f(rs,HSTACK(r,n),cl,OFFSET(ls,1,),0),r,tl,ls,n+1),rs))))),rs,f(0,0,tl,ls,0),IF(ROWS(rs)=1,"无解",IFNA(EXPAND(DROP(rs,1,1),,COLUMNS(ps)),0)))),gp,LAMBDA(ns,BYROW(ns,LAMBDA(r,SUM(ps*r)+SUM(IF(r>fs,r-fs,0)*es)))),sn,LAMBDA(tl,LET(ns,gn(tl),IF(@ns="无解",ns,SORTBY(ns,gp(ns))))),br,LAMBDA(a,f,LET(r,f(TAKE(a,1)),IF(@r="N",IF(ROWS(a)>1,br(DROP(a,1),f),r),VSTACK(TAKE(a,1),r)))),rr,LAMBDA(a,rs,f,LET(r,f(a,TAKE(rs,1)),IF(@r="N",IF(ROWS(rs)>1,rr(a,DROP(rs,1),f),r),VSTACK(TAKE(rs,1),r)))),cns,sn((l+w)*2),lns,sn(l),wns,sn(w),IF(OR(@cns="无解",@lns="无解",@wns="无解"),"无解",LET(a,DROP(br(cns,LAMBDA(r,rr(r,lns,LAMBDA(a,r,IF(AND(a-r>=0),rr(a-r,lns,LAMBDA(a,r,IF(AND(a-r>=0),rr(a-r,wns,LAMBDA(a,r,IF(AND(a-r>=0),rr(a-r,wns,LAMBDA(a,r,IF(AND(a-r=0),r,"N"))),"N"))),"N"))),"N"))))),-1),IFNA(HSTACK(a,gp(TAKE(a,1))),""))))