program xxg;
var
n,k,i,j,t,e,p:longint;
a,w:array[1..500000]of longint;
b:array[1..10]of longint;
procedure xxg(l,r:longint);
var
i,j,x,y,g:longint;
begin
i:=l;j:=r;x:=a[(l+r) shr 1];g:=w[(l+r) shr 1];
repeat
while (a[i]<x)or(a[i]=x)and(w[i]>g) do inc(i);
while (a[j]>x)or(a[j]=x)and(w[j]<g) do dec(j);
if i<=j then
begin
y:=a[i];
a[i]:=a[j];
a[j]:=y;
y:=w[i];
w[i]:=w[j];
w[j]:=y;
i:=i+1;j:=j-1;
end;
until i>j;
if l<j then xxg(l,j);
if i<r then xxg(i,r);
end;
begin
read(n,k); for i:=1 to n do w[i]:=i;
for i:=1 to 10 do read(b[i]);
for i:=1 to n do read(a[i]);
xxg(1,n);
for i:=1 to n do a[i]:=a[i]+b[(n-i)mod 10+1] ;
xxg(1,n);
for i:=n downto n-k+1 do
write(w[i],' ');
end.
各位大神指教