в 3 раза
Объяснение:
Т.к. изображение одно и тоже, то количество точек в них одинаковое (K).
i = 24 бит для p1.bmp
2^i = 256
i = 8 бит для p2.bmp
Для p1.bmp V = 24K
Для p2.bmp V = 8K
24 / 8 = 3
В 3 раза будет меньше информационный объём файла p2.bmp.
V = K * i, где
V - информационный объём изображения (размер файла, содержащего изображение)
K - количество точек (пикселей )
i - глубина цвета (число бит, используемых для записи цвета одного пикселя)
N = 2^i, где
N - количество цветов в палитре
i - глубина цвета (число бит, используемых для записи цвета одного пикселя)
^ - знак степени
Для устранения проблемы фрагментации существуют программы-дефрагментаторы, принцип работы которых заключается в «сборе» каждого файла из его фрагментов.
Код на 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