Do programu wchodzą obiekty.
W każdym obiekcie może być podany numer telefonu i/lub login
(albo jedno z tych wartości, albo oba naraz), a także ładunek w postaci danych binarnych.
Przychodzące obiekty należy zapisywać w pamięci operacyjnej
z zachowaniem następujących ograniczeń:
Jeśli przychodzący obiekt ma login i/lub telefon taki sam jak jeden z wcześniej zapisanych,
to zapisany obiekt należy usunąć, a przychodzący nie zapisywać.
Jeśli obiekt pozostaje w pamięci operacyjnej dłużej niż 60 sekund, należy go usunąć.
Uważa się, że obiekty przychodzą często.
Przy tym, obiekty pasujące po loginie/telefonie są znacznie rzadsze od
ogólnej liczby przychodzących obiektów.
void process(Object o)
{
}