Всоциальной сети "друзьяшки" есть публиковать записи, делать репост (размещать чужую запись на своей странице) и ставить лайки. в "друзьяшках" каждый репост считается отдельной записью и его, в свою очередь, могут репостить другие пользователи. вася опубликовал популярную запись, которая широко разошлась по соцсети. пользователи соцсети могут ставить лайк к записи, при этом если запись является репостом, то этот лайк отображается не только у того пользователя, которому он был поставлен, но и у пользователя, с чьей страницы был сделан репост и так далее до самой исходной записи. например, если пользователь а опубликовал запись, репост которой сделали пользователи б и в, а пользователь г сделал репост записи пользователя б, то лайк, поставленной записи пользователя г, будет отображен у пользователей г, б и а (но не в). пете понравился пост васи. к сожалению, в "друзьяшках" можно ставить только один лайк в день, зато этот лайк отображается во всех записях, которые, находятся выше по дереву лайков. поэтому петя хочет поставить свой единственный лайк так, чтобы он был отображен у как можно большего количества пользователей. ему выбрать запись, которой нужно поставить такой лайк. напишите программу на паскале

gsgshhshsbababa gsgshhshsbababa    1   14.08.2019 23:50    1

Ответы
58624789485 58624789485  20.08.2020 08:42
Const Sz = 1000; var   a: array [1..Sz] of integer;  b: array [1..Sz] of integer;  c: array [1..Sz] of integer;  d: array [1..Sz] of integer;  M: integer;  N: integer;  i: integer;  k: integer;begin  read(M);  readln(N);  for i:=1 to N do begin    read(a[i]);    readln(b[i]);    if (a[i]<>0) then c[i]:=1 else c[i]:=0;    end;  for i:=1 to N do begin  if(c[i]<>0) then begin  for k:=1 to i do begin  if(d[k]=0) then d[i]:=1;  if (c[k]=i) then d[k]:=0;   end;   writeln(d[i])  end;end;end.
ПОКАЗАТЬ ОТВЕТЫ
Другие вопросы по теме Информатика