public static void Main()
DateTime initial = new DateTime(2019, 3, 13, 9, 0, 0);
DateTime final = new DateTime(2019, 3, 13, 10, 0, 0);
bool hasCollision = HasCollision(initial) || HasCollision(final);
hasCollision = BypassCollision(initial, final);
Console.WriteLine(hasCollision);
public static bool HasCollision(DateTime candidate) {
DateTime d1 = new DateTime(2019, 3, 13, 9, 0, 0);
DateTime d2 = new DateTime(2019, 3, 13, 10, 0, 0);
bool hasCollision = false;
if(candidate > d1 && candidate < d2)
public static bool BypassCollision(DateTime candidateInitial, DateTime candidateFinal) {
DateTime d1 = new DateTime(2019, 3, 13, 9, 0, 0);
DateTime d2 = new DateTime(2019, 3, 13, 10, 0, 0);
if(candidateInitial <= d1 && candidateFinal >= d2)