nazad

Zadatak 1.


const
  izlaz : array[1..3] of string = ('Zmaj je uhvatio Bilba kod blaga','Zmaj je uhvatio Bilba na ulazu','Bilbo je odneo blago');
var
  f, g : Text;
  t, t1, t2, t3, p, d : integer;
begin
  Assign(f,'zad1.in'); Assign(g,'zad1.out');
  Reset(f); Rewrite(g);
  ReadLn(f,t1,t,t2);

  p := (t1 + 2*t) div t2;
  d := (t1 + 2*t) mod t2;

  if (p mod 2 = 0) then
    begin
      t3 := 2*t2 - d;
      if (t1 < t3) then WriteLn(g,izlaz[3])
      else WriteLn(g,izlaz[2]);
    end
  else
    if d = 0 then WriteLn(g,izlaz[1])
    else
      if (t2-d = t1) then WriteLn(g,izlaz[2])
      else
        begin
          t3 := 3*t2 - d;
          if t1 < t3 then WriteLn(g,izlaz[3])
          else WriteLn(g,izlaz[2]);
        end;
  Close(f);
  Close(g);
end.

Zadatak 2.


var
  a, k, d, m, p, t : integer;
  l : real;
  f, g : Text;
begin
  Assign(f,'zad2.in'); Assign(g,'zad2.out');
  Reset(f); Rewrite(g);

  ReadLn(f,a,k,d,m);
  p := 0; t := 0;
  While (a >= m) and (p < k) do
    begin
      a := a - m; p := p + d; t := t + 1;
      l := m * 0.85;
      if l - trunc(l) > 0 then m := trunc(l) + 1
      else m := trunc(l);
    end;
  if p >= k then WriteLn(g,'Bilbo je stigao u grad sa ',a,' zlatnika')
  else WriteLn(g,'Bilbo je ostao bez zlatnika ',t+1,'. dana');
  Close(f);
  Close(g);
end.

Zadatak 3.


var
  n, i, k, max, x, a : integer;
  t, c : array[1..200] of integer;
  f, g : Text;
begin
  Assign(f,'zad3.in'); Assign(g,'zad3.out');
  Reset(f); Rewrite(g);

  ReadLn(f,a,n);
  for i := 1 to n do ReadLn(f,t[i],c[i]);

  x := 0; k := 0; max := 0;
  for i := 1 to n do
    if k + t[i] <= a then
      begin
        k := k + t[i];
        if c[i] > max then max := c[i]
      end
    else
      begin
        x := x + max; max := c[i]; k := t[i];
      end;
    x := x + max;
    WriteLn(g,x);
    Close(f); Close(g);
end.

Top