Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- program Project2;
- {$APPTYPE CONSOLE}
- uses
- SysUtils;
- const
- MAXIN = 1000;
- var
- n, m, i, j, x1, y, z: integer;
- x: extended;
- a, b: array [0..MAXIN] of extended;
- bol: array [0..MAXIN] of boolean;
- check: array [0..MAXIN, 0..MAXIN] of boolean;
- begin
- readln(n, m);
- for i := 1 to n do
- begin
- bol[i] := true;
- a[i] := 0;
- b[i] := i;
- for j := 1 to n do
- check[i][j] := true;
- end;
- for i := 1 to m do
- begin
- read(x1, y);
- check[x1][y] := false;
- if (y = 0) then
- begin
- bol[x1] := false;
- end;
- if (bol[x1]) then
- begin
- read(z);
- if (z = 1) then
- a[x1] := a[x1] + 1
- else
- if (z = 2) then
- a[y] := a[y] + 1
- else
- begin
- a[x1] := a[x1] + 0.5;
- a[y] := a[y] + 0.5;
- end;
- end;
- end;
- for i := 1 to n - 1 do
- for j := i + 1 to n do
- if (check[i][j]) and (bol[i]) and not(bol[j]) then
- a[i] := a[i] + 1
- else
- if (check[i][j]) and not(bol[i]) and (bol[j]) then
- a[j] := a[j] + 1
- else
- if (check[i][j]) and (bol[i]) and (bol[j]) then
- begin
- a[i] := a[i] + 0.5;
- a[j] := a[j] + 0.5;
- end;
- for i := 2 to n do
- for j := n downto i do
- if (a[j] > a[j - 1]) then
- begin
- x := a[j];
- a[j] := a[j - 1];
- a[j - 1] := x;
- x := b[j];
- b[j] := b[j - 1];
- b[j - 1] := x;
- end;
- for i := 1 to n do
- writeln(b[i]:0:0, ' ', a[i]:0:1);
- readln;
- readln;
- end.
Advertisement
Add Comment
Please, Sign In to add comment