Задание № 4264

Студент

Кушнарев Дмитрий

Задача

Friends of Friends

Состояние

Завершено

Баллов

5

Дедлайн
02 мая 2022
Назначено

27.05.2022, 13:00

Завершено

27.12.2022, 11:56

Моделируем работу движка социальной сети.

Дан граф френдования в формате IDюзера IDфренда1 IDфренда2 …:

vasya kolya petya sasha
sasha vasya cool123 petya
cool123 kolya
kolya cool123

Здесь у юзера vasya 3 френда и т.д. Примем, что IDюзера может содержать цифры и латинские буквы обоих регистров.

Также дан список постов в социальной сети: Время IDавтора Текст:

2014-10-20T08:00:00 vasya Блин, сегодня опять понедельник :(
2014-10-20T08:05:00 cool123 Ура, понедельник!!!
2014-10-20T08:39:00 kolya Какой сегодня день?

(время в формате ISO8601)

Задача

Для заданного userID построить френдленту (все посты френдов, отсортированные по времени в порядке убывания, т.е. самые свежие в начале), а также ленту «friends of friends», т.е. посты френдов и френдов френдов, также отсортированные по времени в порядке убывания. Посты не должны повторяться.

Дополнение

Отдельным методом реализовать вычисление «количества рукопожатий» между двумя юзерами (т.е. какой длины путь в графе френдования их разделяет).

Действия