Отримання знань
дистанційна підтримка освіти школярів
Интервалы
Входные данные
Выходные данные
Пример входных данных
Пример выходных данных
Анализ условия и обсуждение идеи решения
Пример решения на Pascal:
program PKU1089;
{$I-,S-,Q-,R-}
const maxn = 1000010;
type integer = longint;
var a: array[1..maxn] of integer;
x: array[1..maxn] of boolean;
n: integer;
procedure prepare;
var u, v, i: integer;
begin
fillchar(x, sizeof(x), false);
fillchar(a, sizeof(a), 0);
readln(n);
for i := 1 to n do begin
read(u, v);
inc(a[u]); dec(a[v]);
x[u] := true;
x[v] := true;
end;
end;
procedure main;
var now, i, j: integer;
begin
i := 1; now := 0;
while i < maxn do begin
now := now + a[i];
if now = 0 then begin
if x[i] then writeln(i, ' ', i);
i := i + 1;
end else begin
j := i;
while now > 0 do begin
j := j + 1;
now := now + a[j];
end;
writeln(i, ' ', j);
i := j + 1;
end;
end;
end;
begin
prepare;
main;
end.
Пример решения на C++:
Попередня | Зміст | Наступна |
В системі:
гості - (1); користувачі -
(0)