cashuta
?>

При регистрации в компьютерной системе каждому пользователю выдаётся пароль, состоящий из 9 символов. В качестве символов используют прописные буквы латинского алфавита (т.е. 26 различных символов В базе данных для хранения сведений о каждом пользователе отведено одинаковое минимально возможное целое число байт. При этом используют посимвольное кодирование паролей, все символы кодируют одинаковым и минимально возможным количеством бит. Кроме собственно пароля, для каждого пользователя в системе хранятся дополнительные сведения, для чего выделено целое число байт; это чилсло одно и то же для всех пользователей. Для хранения сведений о 15 пользователях потребовалось 300 байт. Сколько байт выделено для хранения дополнительных сведений об одном пользователе? В ответе запишите целое число – количество байт.

Информатика

Ответы

tatianaesipenko
Учитывая, что 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
shturman-765255
Begin
  var n:=ReadInteger('n = ');
  var m:=ReadInteger('m = ');
  Writeln('Исходная матрица:');
  var a:=MatrRandom(n,m,-20,20); 
  a.Println(4);
  for var i:=0 to a.RowCount-1 do
    for var j:=0 to a.ColCount-1 do
      if a[i,j]>0 then a[i,j]:=1 else a[i,j]:=0;
  Writeln('Измененная матрица:');
  a.Println(4)
end.

Пример:
n =  4
m =  5
Исходная матрица:
   7  -8  -7  -5  -7
   2   4  -3  -2 -13
  14   5 -12   9  20
  12  11  18  -3   7
Измененная матрица:
   1   0   0   0   0
   1   1   0   0   0
   1   1   0   1   1
   1   1   1   0   1

Ответить на вопрос

Поделитесь своими знаниями, ответьте на вопрос:

При регистрации в компьютерной системе каждому пользователю выдаётся пароль, состоящий из 9 символов. В качестве символов используют прописные буквы латинского алфавита (т.е. 26 различных символов В базе данных для хранения сведений о каждом пользователе отведено одинаковое минимально возможное целое число байт. При этом используют посимвольное кодирование паролей, все символы кодируют одинаковым и минимально возможным количеством бит. Кроме собственно пароля, для каждого пользователя в системе хранятся дополнительные сведения, для чего выделено целое число байт; это чилсло одно и то же для всех пользователей. Для хранения сведений о 15 пользователях потребовалось 300 байт. Сколько байт выделено для хранения дополнительных сведений об одном пользователе? В ответе запишите целое число – количество байт.
Ваше имя (никнейм)*
Email*
Комментарий*

Популярные вопросы в разделе

sandovo590
ooo-krasa
kengyra
eliteclassic308
Михайловна-Гусева350
sinicin80
nkochladze
aleksey270593
laleonaretouch
dsnewline
YuRII1236
Мария1414
tofilev
olgalooo
seletan1