Esken213141
11.03.2023 23:57

перевести код на Python const MAX = 38;

var n,x,y,i,j : integer;

var m : array [1..MAX, 1..MAX] of integer;

var maxH : integer;

procedure spojuj(x,y,hloubka : integer);

var i,j : integer;

begin

if hloubka > maxH then maxH := hloubka;

for i:=1 to MAX do

if m[y, i] > 0 then

begin

dec(m[y,i]);

spojuj(y, i, hloubka +1);

spojuj(i, y, hloubka +1);

inc(m[y,i]);

end

else if m[i, y] > 0 then

begin

dec(m[i,y]);

spojuj(i, y, hloubka +1);

spojuj(y, i, hloubka +1);

inc(m[i,y]);

end;

end;

begin

maxH := 0;

for i:=1 to MAX do

for j:=1 to MAX do

m[i,j] := 0;

read(n);

for i:=1 to n do

begin

read(x,y);

inc(m[x,y]);

end;

for i:=1 to MAX do

for j:=1 to MAX do

if m[i,j] > 0 then

begin

dec(m[i,j]);

spojuj(i,j,1);

spojuj(j,i,1);

inc(m[i,j]);

end;

write(maxH);

end.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
Bauer322
05.09.2022 01:01

Вычитаем первое число из второго.

Если результат отрицательный, то первое меньше второго.

Если нулевой, то они равны.

Если положительный, то первое больше второго.

Найдем разность между первым и вторым значением: c=a-b

Все что нам требуется сделать, это выяснить, является ли с положительным числом.

Например, используя функцию сигнум, можно получить вариант функции Хевисайда, которая будет принимать значение 1 только для положительных значений, а во всех остальных случаях обращаться в ноль. f(c)=[(sgn(c)+1/)2]

В нашем случае можно записать, что max(a,b)=a*f(c)+b*f(-c)

Так мы можем сравнить два числа, не прибегая к логическому сравнению.

Конечно, данный алгоритм реализуем при условии наличия встроенной функции сигнум (она присутствует даже в старом Бейсике ). Но даже если такой встроенной функции нет, ее написание не составит большого труда.

0,0(0 оценок)
Ответ:
Mimimimimi5555555555
29.08.2022 20:07
//Общее сопротивление сети: 
// 1/R = 1/r1 + 1/r2 
// 1/R = (r2+r1)/(r2*r1) 
// R = r2*r1 / (r2 + r1) 
//Закон Ома для участка цепи: 
// I = U/R  

var   
r1,r2,u : integer;   
R,I : real;    

begin 
writeln ('Введите значения сопротивления (r1 r2)'); 
readln (r1,r2); 
writeln ('Укажите напряжение на концах цепи (u)'); 
readln (u);   

R := r2*r1 / (r2 + r1); 
I := U/R;   

//Фактически можно не использовать переменную R 
//А вставить выражение сразу     
//    I := U/( r2*r1 / (r2 + r1) );       

writeln ('Сила тока на участке = ',I); 
end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота