ВК

/*

  • Есть список событий, у которых в наличии поля с id этого события, временем старта события и временем завершения события.
  • Нужно составить алгоритм выяснения, есть ли среди этих событий конфликтующие, то есть интервалы времени которых пересекаются.
  • Если время старта одного события совпадает со временем окончания другого, то такие события будем считать пересекающимися.
  • Примеры:
  • Input: [{id="1", startTime=1, endTime=5}, {id="2", startTime=4, endTime=7}]
  • Output: true
  • Input: [{id="1", startTime=1, endTime=5}, {id="2", startTime=7, endTime=9}, {id="3", startTime=4, endTime=7}]
  • Output: true
  • Input: [{id="1", startTime=1, endTime=5}, {id="2", startTime=6, endTime=7}]
  • Output: false
  • Input: []
  • Output: false */

public class ConflictFinder {

public boolean findConflicts(List<Event> events) { return false; // TODO }

public static class Event { private final String id; private final long startTime; private final long endTime;

public Event(String id, long startTime, long endTime) { this.id = id; this.startTime = startTime; this.endTime = endTime; }

public String getId() { return id; }

public long getStartTime() { return startTime; }

public long getEndTime() { return endTime; } } } #vk| #java