(*

 *Annette Lan

 *Woburn Collegiate Institute

 *Contest #1 - Time Sheets

 *Junior Division

 *)

var

instr: string;

ll, s, e: string;

h, pay, sub_total: real;

i, startf, endf: integer;

l, iNum: Integer;

   code: Integer;

function split(instr:string; startf: integer) :integer;

  var

  i, endf: integer;

  begin

            endf := 0;

            for i:=startf to length(instr) do

                if instr[i]=' ' then

                          begin

                            endf:=i;

                                    break

                          end;

    if (endf = 0) then endf := length(instr)+1;

            split := endf;

  end;

function gethours(e:string) :real;

  begin

    if e='1' then

              gethours:=9

            else if e='2' then

              gethours:=9.5

            else if e='3' then

              gethours:=10

            else if e='4' then

              gethours:=10.5

    else if e='5' then

      gethours:=11

    else if e='6' then

              gethours:=11.5

            else if e='7' then

              gethours:=12

            else if e='8' then

              gethours:=12.5

            else if e='9' then

              gethours:=13

            else if e='A' then

              gethours:=13.5

            else if e='B' then

              gethours:=14

            else if e='C' then

              gethours:=14.5

            else if e='D' then

              gethours:=15

            else if e='E' then

              gethours:=15.5

            else if e='F' then

              gethours:=16

    else if e='G' then

              gethours:=16.5

    else if e='H' then

              gethours:=17

            else

              gethours:=-1;            

  end;

begin

  sub_total:= 0;

  for i:=1 to 4 do

    begin

writeln(' i = ', i);          

              pay:=0;

              readln(instr);

              startf:=1;

              endf:= split(instr, startf);

              ll := copy(instr, startf-1, endf-startf);

              startf:= endf + 1;

              endf:= split(instr, startf);

              s:= copy(instr, startf, endf-startf);

              startf:= endf + 1;

              endf:= split(instr, startf);

              e:= copy(instr, startf, endf-startf);

 

              h:= gethours(e)-gethours(s);

              val(ll, iNum, code);

              l := iNum;

              if l<=9 then

                        pay:=h*10

              else if (l>=10) and (l<=19) then

                begin 

                          if h<=4 then 

                            pay:=h*8

                          else

                                    pay:=(4*8)+12*(h-4);

                        end 

              else if (l>=20) and (l<=29) then

                begin 

                          if h>4 then

                            pay:=4*12 + (h-4)*12*2

                          else

                           pay:=(12*4)

                end;

              sub_total:=sub_total+pay;

              writeln( '$', pay:1:2 );

            end; 

  writeln('$',sub_total:1:2);

  writeln('E N D ');

  readln;

end.