В
Все
М
Математика
О
ОБЖ
У
Українська мова
Д
Другие предметы
Х
Химия
М
Музыка
Н
Немецкий язык
Б
Беларуская мова
Э
Экономика
Ф
Физика
Б
Биология
О
Окружающий мир
Р
Русский язык
У
Українська література
Ф
Французский язык
П
Психология
А
Алгебра
О
Обществознание
М
МХК
В
Видео-ответы
Г
География
П
Право
Г
Геометрия
А
Английский язык
И
Информатика
Қ
Қазақ тiлi
Л
Литература
И
История
lera0078
lera0078
03.02.2022 05:45 •  Информатика

Информатика 6 класс страница 76 1,2 задание


Информатика 6 класс страница 76 1,2 задание

Показать ответ
Ответ:
treetmeh
treetmeh
21.05.2023 23:26
Program a;
var s: array of integer;
x,n,p,sum,max,min,i,k,o,m:integer;
begin
p:=1;
sum:=0;
m:=-1;
o:=-1;
max:=-MaxInt;
min:=MaxInt;
Write('n= ');
read(n);
setlength(s,n);
Writeln('Перечислите значения:');
for x:=0 to n-1 do begin
read (s[x]);
k:=s[x];
if (k>0) and ((k mod 5) =0) then sum:=sum+k;
if ((k mod 10)=0) and (k>max) then begin max:=k; o:=x; end;
if ((k mod 2) = 0) and (k<min) then begin min:=k; m:=x; end;
end;Writeln('Сумма = ',sum);
if (ABS(o-m)=1) or (o=m) or (o=-1) or (m=-1) then write('Диапазон не найден') 
else begin
if (o>m) then
for i:=m+1 to o-1 do
p:=s[i]*p
else 
for i:=o+1 to m-1 do
p:=s[i]*p;
writeln('Произведение = ',p);
end;
end.
0,0(0 оценок)
Ответ:
NekkeR8821
NekkeR8821
17.01.2020 19:43
Учитывая, что 8 букв можно переставить примерно 40 тысячами можно просто запустить поиск в ширину, сохранить для всех перестановок то, из какой строчки они получились, и потом восстановить ответ для строчки abcdefgh.

Код на python 3:
from queue import Queue

to_process = Queue()
to_process.put(("edghcbfa", None))
prec = {}

while not to_process.empty():
    s, prev = to_process.get()
    if s in prec:
        continue
    for i in range(7):
        for j in range(i + 1, 8):
            if i == 0:
                next_s = s[j::-1] + s[j+1:]
            else:
                next_s = s[:i] + s[j:i-1:-1] + s[j+1:]
            if next_s not in prec:
                to_process.put((next_s, s))
    prec[s] = prev

current = "abcdefgh"
print(current)
while prec[current] is not None:
    current = prec[current]
    print(current)

Вывод программы:
abcdefgh
edcbafgh
edcbhgfa
edbchgfa
edghcbfa

Соответственно, ответ такой:
G B
B C
H A
E A
0,0(0 оценок)
Популярные вопросы: Информатика
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота