Program machine;
Uses Math;
{ constraints }
const
    MAXD = 1000;
    MAXY = 1000000;
{ input data }
var
    C, D, Y, i,j,k,w: longint;
    // Warning! M and P are 1-based
    M, P        : array[1..MAXD] of longint;
    bilancio : array[0..MAXD] of longint;
    costo, indice : array[0..MAXY] of longint;
begin

   (* assign(input,  'input.txt');  reset(input);
    assign(output, 'output.txt'); rewrite(output);*)


    readln(C, D, Y);
     // Warning! M and P are 1-based
    for i:=1 to D do
        read(M[i]);
    readln();
    for i:=1 to D do
        read(P[i]);
    readln();
    bilancio[1]:=C+M[1]-P[1]; 
    { insert your code here }
    bilancio[0]:=0;  costo[0]:=0; w:=0;
    for i:=2 to D do bilancio[i]:=bilancio[i-1]+M[i]-P[i]+ P[i-1];
    for i:=1 to Y do costo[i]:=2147483647;
    for i:= 0 to D do
      begin
          for j:=1 to D do
            begin
               if (i+j <= Y) then
                     begin
                         if (costo[i] + bilancio[j])<=costo[i+j] then
                            costo[i+j] := costo[i] + bilancio[j];
                            writeln(costo[i+j]);
                     end;    
            end; 
         if ((i <= Y) and (costo[i] = bilancio[i])) then
            begin
               indice[w] := i;
               w := w+1;
           end;
      end;
    for i:= D to Y do
    begin
        for k:=0 to w-1 do
        begin
            j := indice[k];
            if (i+j <= Y) then
            begin
                if (costo[i+j] >= costo[i] + bilancio[j]) then
                    costo[i+j] := costo[i] + bilancio[j];
            end;
        end;
    end;

    writeln(costo[Y]); { print result } 
end.