begin
var n := ReadInteger;
var L := new List<(integer, integer)>;
loop n do
begin
L.Add(ReadInteger2)
end;
var k := L.Count;
L := L.Distinct.ToList; // этап 1
var k1 := L.Count;
Print(k - k1);
(k, k1) := (k1, 0); // этап 2
var St := new Stack<integer>;
var m := L.First[0]; // время
for var i := 1 to k - 1 do
if L[i][0] <= m then
begin
St.Push(i);
Inc(k1)
end
else m := L[i][0];
for var i := 1 to k1 do
L.RemoveAt(St.Pop);
Print(k1);
(k, k1) := (L.Count, 0); // этап 3
m := L.First[1]; // температура
for var i := 1 to k - 1 do
if Abs(L[i][1] - m) > 10 then
begin
St.Push(i);
Inc(k1)
end
else m := L[i][1];
for var i := 1 to k1 do
L.RemoveAt(St.Pop);
Println(k1);
end.
Пример610 58 58 58 512 2513 102 1 1Поделитесь своими знаниями, ответьте на вопрос:
В программе используется одномерный целочисленный массив A с индексами от 1 до 10. Значения элементов равны 4; 2; 5; 6; 7; 7; 7; 5; 5; 9соответственно, т.е. A[1] = 4; A[1] = 2 и т.д. Определите значение переменной c после выполнения следующего фрагмента программы, записанного ниже на языке программирования Паскаль. c:= 0; for i := 1 to 9 do if A[i - 1]>= A[i] then begin t:= A[i]; A[i]:= A[i - 1]; A[i - 1]:= t; c:= c + 1; end;
begin
var n := ReadInteger;
var L := new List<(integer, integer)>;
loop n do
begin
L.Add(ReadInteger2)
end;
var k := L.Count;
L := L.Distinct.ToList; // этап 1
var k1 := L.Count;
Print(k - k1);
(k, k1) := (k1, 0); // этап 2
var St := new Stack<integer>;
var m := L.First[0]; // время
for var i := 1 to k - 1 do
if L[i][0] <= m then
begin
St.Push(i);
Inc(k1)
end
else m := L[i][0];
for var i := 1 to k1 do
L.RemoveAt(St.Pop);
Print(k1);
(k, k1) := (L.Count, 0); // этап 3
m := L.First[1]; // температура
for var i := 1 to k - 1 do
if Abs(L[i][1] - m) > 10 then
begin
St.Push(i);
Inc(k1)
end
else m := L[i][1];
for var i := 1 to k1 do
L.RemoveAt(St.Pop);
Println(k1);
end.
Пример610 58 58 58 512 2513 102 1 1