b:longint;
w:longint;
end;
var n,k,i:longint;
a:array[0..1000000]of jl;
e:array[0..10]of longint;
procedure sort(r,l:longint);
var i,j,x,t:longint;
begin
i:=r;j:=l;x:=(i+j)div 2;
repeat
while (a[i].w>a[x].w)or((a[i].w=a[x].w)and(a[i].b<a[x].b)) do inc(i);
while (a[j].w<a[x].w)or((a[j].w=a[x].w)and(a[i].b>a[x].b)) do dec(j);
if i<=j then
begin
t:=a[i].w;
a[i].w:=a[j].w;
a[j].w:=t;
t:=a[i].b;
a[i].b:=a[j].b;
a[j].b:=t;
inc(i);
dec(j);
end;
until i>j;
if r<j then sort(r,j);
if i<l then sort(i,l);
end;
begin
read(n,k);
if (n=0)or(k=0)then begin writeln(' ');exit;end;
for i:=1 to 10 do
read(e[i]);
for i:=1 to n do
begin
read(a[i].w);
a[i].b:=i;
end;
sort(1,n);
for i:=1 to n do
a[i].w:=a[i].w+e[(i-1) mod 10+1];
sort(1,n);
for i:=1 to k do
write(a[i].b,' ');
end.
b:longint;
w:longint;
end;
var n,k,i:longint;
a:array[0..1000000]of jl;
e:array[0..10]of longint;
var i,j,x,t:longint;
begin
i:=r;j:=l;x:=(i+j)div 2;
repeat
while (a[i].w>a[x].w)or((a[i].w=a[x].w)and(a[i].b<a[x].b)) do inc(i);
while (a[j].w<a[x].w)or((a[j].w=a[x].w)and(a[i].b>a[x].b)) do dec(j);
if i<=j then
begin
t:=a[i].w;
a[i].w:=a[j].w;
a[j].w:=t;
t:=a[i].b;
a[i].b:=a[j].b;
a[j].b:=t;
inc(i);
dec(j);
end;
until i>j;
if r<j then sort(r,j);
if i<l then sort(i,l);
end;
read(n,k);
if (n=0)or(k=0)then begin writeln(' ');exit;end;
for i:=1 to 10 do
read(e[i]);
for i:=1 to n do
begin
read(a[i].w);
a[i].b:=i;
end;
sort(1,n);
for i:=1 to n do
a[i].w:=a[i].w+e[(i-1) mod 10+1];
sort(1,n);
for i:=1 to k do
write(a[i].b,' ');
end.