program rollercoaster3;
var N,K,i,countH, speed :int64;
S : Ansistring;
roller : array[1..100] of int64;
velocita : array[0..100] of int64;
begin
(*assign(input, 'input.txt'); reset(input);
assign(output, 'output.txt'); rewrite(output);*)
ReadLn(N);
ReadLn(S);
K := 0; countH:=0; speed:=0; velocita[0]:=0;
{ INSERT YOUR CODE HERE }
if S[1]='U' then begin K:=-1; WriteLn(K); exit; end;
for i:=1 to N do
Case S[i] of
'D' : roller[i]:=9;
'U' : roller[i]:=-11;
'H' : roller[i]:=0;
'B' : roller[i]:=10;
end;
for i:=1 to N do
begin
if S[i]='H' then countH:=countH+1;
speed:=speed+roller[i];
if speed<=0 then
begin
if countH>0 then
begin
countH:=countH-1;
speed:=speed + 10;
K:=K+1;
end
else begin K:=-1; WriteLn(K); break; end; end;
velocita[i]:=speed;
end;
for i:=1 to N do write(velocita[i],' '); writeln;
if velocita[N]<=0 then K:=-1;
WriteLn(K);
end.
cHJvZ3JhbSByb2xsZXJjb2FzdGVyMzsKdmFyIE4sSyxpLGNvdW50SCwgc3BlZWQgOmludDY0OwogICAgUyA6IEFuc2lzdHJpbmc7CiAgICByb2xsZXIgOiBhcnJheVsxLi4xMDBdIG9mIGludDY0OwogICAgdmVsb2NpdGEgOiBhcnJheVswLi4xMDBdIG9mIGludDY0OwogICAgCmJlZ2luCiAgICAoKmFzc2lnbihpbnB1dCwgICdpbnB1dC50eHQnKTsgIHJlc2V0KGlucHV0KTsKICAgIGFzc2lnbihvdXRwdXQsICdvdXRwdXQudHh0Jyk7IHJld3JpdGUob3V0cHV0KTsqKQoKICAgIFJlYWRMbihOKTsKCiAgICBSZWFkTG4oUyk7CiAgICBLIDo9IDA7IGNvdW50SDo9MDsgc3BlZWQ6PTA7IHZlbG9jaXRhWzBdOj0wOwoKICAgIHsgSU5TRVJUIFlPVVIgQ09ERSBIRVJFIH0KICAgIGlmIFNbMV09J1UnIHRoZW4gYmVnaW4gSzo9LTE7IFdyaXRlTG4oSyk7IGV4aXQ7IGVuZDsgICAKICAgIGZvciBpOj0xIHRvIE4gZG8gCiAgICAgICAgICAgICAgICAgICAgICAgQ2FzZSBTW2ldIG9mICAKCQkJCSdEJyA6IHJvbGxlcltpXTo9OTsKCQkJCSdVJyA6IHJvbGxlcltpXTo9LTExOyAgCgkJCQknSCcgOiByb2xsZXJbaV06PTA7ICAKCQkgICAgICAgICAgICAgICAgJ0InIDogcm9sbGVyW2ldOj0xMDsgCiAgICAgICAgICAgICAgICAgICAgICBlbmQ7CiAgICBmb3IgaTo9MSB0byBOIGRvIAogICAgICAgICAgICAgICAgICAgIGJlZ2luCiAgICAgICAgICAgICAgICAgICAgICAgaWYgU1tpXT0nSCcgdGhlbiBjb3VudEg6PWNvdW50SCsxOyAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgIHNwZWVkOj1zcGVlZCtyb2xsZXJbaV07IAogICAgICAgICAgICAgICAgICAgICAgIGlmIHNwZWVkPD0wIHRoZW4KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBiZWdpbgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiBjb3VudEg+MCB0aGVuIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGJlZ2luIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY291bnRIOj1jb3VudEgtMTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNwZWVkOj1zcGVlZCArIDEwOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgSzo9SysxOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbmQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgIGJlZ2luIEs6PS0xOyBXcml0ZUxuKEspOyBicmVhazsgZW5kOyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGVuZDsgIAogICAgICAgICAgICAgICAgICAgICAgIHZlbG9jaXRhW2ldOj1zcGVlZDsKICAgICAgICAgICAgICAgICAgICBlbmQ7ICAgICAgCiAgICAgZm9yIGk6PTEgdG8gTiBkbyB3cml0ZSh2ZWxvY2l0YVtpXSwnICcpOyB3cml0ZWxuOwogICAgIGlmIHZlbG9jaXRhW05dPD0wIHRoZW4gSzo9LTE7IAogICAgIFdyaXRlTG4oSyk7CmVuZC4=