Типы кадров в сжатом видеопотоке кодирования и хранения информации об очередном кадре, отличающиеся друг от друга наличием или отсутствием зависимостей этого кадра от предыдущих и последующих.
Кадр – это основная структура кодирования. С кадром связаны следующие параметры: время, тип кадра, признак инициализации буфера, разрешение векторов движения и их порядок и пользовательские данные
Обычно кадр разбивается на квадратные макроблоки, и тип ссылки для каждого из макроблоков определяется индивидуально, однако с ограничением, заданным типом всего кадра:
I-кадры (англ. Intra-coded frames, также называются «ключевыми» — keyframes — или «опорными») могут содержать только макроблоки, сжатые независимо от других кадров.
P-кадры (англ. Predicted frames, «разностные» кадры) могут содержать как независимо сжатые макроблоки, так и макроблоки со ссылкой на другой, предыдущий, I- или P-кадр.
B-кадры (англ. Bi-predicted frames, «двунаправленные», «обратные» кадры) могут содержать следующие макроблоки: независимые (intra), со ссылкой на предыдущий кадр (predicted) или со ссылкой на 2 кадра (в mpeg-2) — предыдущий и последующий (bi-predicted); либо на несколько предыдущих и последующих кадров (H.264). B-кадры ссылаются на I-, P- или другие B-кадры.
D-кадры (англ. DC direct coded picture) независимо сжатые с большой потерей качества. Используются только при быстром поиске.
В новом стандарте MPEG-4 AVC/H.264 также вводится понятие SI- и SP-кадров.
inFile = open('input.txt', 'r', encoding='utf8')
outFile = open('output.txt', 'w', encoding='utf8')
score = []
i = 0
nstr = 1
for line in inFile:
if nstr == 1:
k = int(line)
else:
line1 = line.split()
sc3 = int(line1[-1])
sc2 = int(line1[-2])
sc1 = int(line1[-3])
if sc1 >= 40 and sc2 >= 40 and sc3 >= 40:
score.append(sc1 + sc2 + sc3)
i += 1
nstr += 1
inFile.close()
if k >= i:
print(0, file=outFile)
else:
score.sort(reverse=True)
if score[k-1] > score[k]:
print(score[k-1], file=outFile)
else:
ans = ''
for ii in score[k-1::-1]:
if score[k-1] < ii and ans == '':
ans = ii
if ans == '':
ans = 1
print(ans, file=outFile)
outFile.close()
begin
for i:=2 to 9 do
begin
x:=i;
y:=x*x+2*x;
writeln(y);
end;
end.