nazad

Zadatak 1.


var
  f, g : Text;
  a, b, c : integer;
  ka, kb, kc : longint;
procedure Zameni(var a, b : integer);
var
  p : integer;
begin
  p := a; a := b; b := p;
end;
begin
  Assign(f,'zad1.in'); Reset(f);
  Assign(g,'zad1.out'); Rewrite(g);

  Read(f,a,b,c);

  if(a > b) then Zameni(a,b);
  if(a > c) then Zameni(a,c);
  if(b > c) then Zameni(b,c);

  ka := a * a; kb := b * b; kc := c * c;

  if(a + b <= c) then WriteLn(g,'NEMOGUCE')
  else
    if(ka + kb = kc) then WriteLn(g,'PRAVOUGLI')
    else
      if(ka + kb < kc) then WriteLn(g,'TUPOUGLI')
      else WriteLn(g,'OSTROUGLI');

  Close(f);
  Close(g);
end.

Zadatak 2.


type
  TNiz = array[1..100] of integer;
var
  f, g : Text;
  niz, rez : TNiz;
  i, n, br : integer;

function Pripada(el : integer; niz : TNiz; n : integer) : boolean;
var
  p : boolean;
  i : integer;
begin
  p := false;
  i := 1;
  while (not p) and (i <= n) do
    if (niz[i] = el) then p := true
    else i := i + 1;
  Pripada := p;
end;

begin
  Assign(f,'zad2.in'); Reset(f);
  Assign(g,'zad2.out'); Rewrite(g);

  Read(f,n);
  for i := 1 to n do Read(f,niz[i]);

  br := 0;

  for i := 1 to n do
    if not Pripada(niz[i], rez, br) then begin
      br := br + 1;
      rez[br] := niz[i];
    end;

  for i := 1 to br do Write(g,rez[i],' ');
  WriteLn(g);

  Close(f);
  Close(g);
end.

Zadatak 3.


type
  TNiz = array[1..100] of integer;
var
  f, g : Text;
  niz : TNiz;
  n, i : integer;
  max : longint;

procedure Sort(var niz : TNiz; n : integer);
var
  i, j, p : integer;
begin
  for i := 1 to n - 1 do
    for j := i + 1 to n do
      if (niz[i] > niz[j]) then begin
        p := niz[i]; niz[i] := niz[j]; niz[j] := p;
      end;
end;

begin
  Assign(f,'zad3.in'); Reset(f);
  Assign(g,'zad3.out'); Rewrite(g);

  Read(f,n);
  for i := 1 to n do Read(f,niz[i]);

  Sort(niz,n);

  max := 0;

  for i := 1 to n do
    if niz[i] * (n - i + 1) > max then
      max := niz[i] * (n - i + 1);

  WriteLn(g,max);

  Close(f);
  Close(g);
end.

Zadatak 4.


var
  n, x, i, br : integer;
  suma : real;
  f, g : Text;
begin
  Assign(f,'zad4.in'); Reset(f);
  Assign(g,'zad4.out'); Rewrite(g);

  Read(f,n);
  suma := 0; br := 0;
  for i := 1 to n do begin
    Read(f,x);
    suma := suma + x;
  end;

  while(suma / (n + br) < 9.5) do begin
    suma := suma + 10;
    br := br + 1;
  end;

  WriteLn(g,br);
  Close(f);
  Close(g);
end.

Zadatak 5.


var
  f, g : Text;
  rez : array[0..100] of integer;
  br, n, i, x, max : integer;
begin
  Assign(f,'zad5.in'); Reset(f);
  Assign(g,'zad5.out'); Rewrite(g);

  for i := 0 to 100 do rez[i] := 0;

  Read(f,n);
  for i := 1 to n do begin
    Read(f,x);
    rez[x] := rez[x] + 1;
  end;

  max := 0;
  for i := 0 to 100 do
    if rez[i] > max then max := rez[i];


  Write(g,max,' ');
  for i := 0 to 100 do if rez[i] = max then Write(g,i,' ');

  Close(f);
  Close(g);
end.

Zadatak 6.


type
  TNiz = array[1..10000] of int64;
var
  kol, vr, pom : TNiz;
  i, j, n, m : integer;
  f, g : Text;
begin
  Assign(f,'zad6.in'); Reset(f);
  Assign(g,'zad6.out'); Rewrite(g);

  Read(f,m,n);
  for i := 1 to m do Read(f,vr[i]);
  for i := 1 to n do Read(f,kol[i]);

  for i := 2 to n do begin
    pom[1] := kol[i];
    for j := 2 to m do pom[j] := pom[j-1] + vr[j-1] + vr[j];
    for j := 1 to m do vr[j] := pom[j];
  end;

  WriteLn(g,vr[m]);

  Close(f);
  Close(g);
end.

nazad