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