/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
import java.text.SimpleDateFormat;
/* Name of the class has to be "Main" only if the class is public. */
public class Main {
Booking[] bookings = {
};
System.
out.
println(getDaysBetweenDates
(bookings
));
}
public static Date getMaxOccurence
(Booking
[] booking
) { List<Date> dates = new ArrayList<Date>();
int freq = 0;
for (Booking b : booking) {
calendar.setTime(b.getStartDate());
while (calendar.getTime().before(b.getEndDate())) {
Date result
= calendar.
getTime(); dates.add(result);
if (curr > freq) {
freq = curr;
max = result;
}
}
}
return max;
}
static class Booking {
public Booking
(Date startDate,
Date endDate
) { this.startDate = startDate;
this.endDate = endDate;
}
public Date getStartDate
() { return startDate;
}
public void setStartDate
(Date startDate
) { this.startDate = startDate;
}
public Date getEndDate
() { return endDate;
}
public void setEndDate
(Date endDate
) { this.endDate = endDate;
}
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CmltcG9ydCBqYXZhLnRleHQuU2ltcGxlRGF0ZUZvcm1hdDsKCgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KcHVibGljIGNsYXNzIE1haW4gewoKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBFeGNlcHRpb24gewogICAgICAgIEJvb2tpbmdbXSBib29raW5ncyA9IHsKICAgICAgICAgICAgICAgIG5ldyBCb29raW5nKG5ldyBTaW1wbGVEYXRlRm9ybWF0KCJ5eXl5LU0tZCIsIExvY2FsZS5FTkdMSVNIKS5wYXJzZSgiMjAxNi0xMC0xMiIpLG5ldyBTaW1wbGVEYXRlRm9ybWF0KCJ5eXl5LU0tZCIsIExvY2FsZS5FTkdMSVNIKS5wYXJzZSgiMjAxNi0xMC0xOCIpICksCiAgICAgICAgICAgICAgICBuZXcgQm9va2luZyhuZXcgU2ltcGxlRGF0ZUZvcm1hdCgieXl5eS1NLWQiLCBMb2NhbGUuRU5HTElTSCkucGFyc2UoIjIwMTYtMTAtMTEiKSxuZXcgU2ltcGxlRGF0ZUZvcm1hdCgieXl5eS1NLWQiLCBMb2NhbGUuRU5HTElTSCkucGFyc2UoIjIwMTYtMTAtMTUiKSApLAogICAgICAgICAgICAgICAgbmV3IEJvb2tpbmcobmV3IFNpbXBsZURhdGVGb3JtYXQoInl5eXktTS1kIiwgTG9jYWxlLkVOR0xJU0gpLnBhcnNlKCIyMDE2LTEwLTEzIiksbmV3IFNpbXBsZURhdGVGb3JtYXQoInl5eXktTS1kIiwgTG9jYWxlLkVOR0xJU0gpLnBhcnNlKCIyMDE2LTEwLTE0IikgKSwKICAgICAgICAgICAgICAgIG5ldyBCb29raW5nKG5ldyBTaW1wbGVEYXRlRm9ybWF0KCJ5eXl5LU0tZCIsIExvY2FsZS5FTkdMSVNIKS5wYXJzZSgiMjAxNi0xMC0xMiIpLG5ldyBTaW1wbGVEYXRlRm9ybWF0KCJ5eXl5LU0tZCIsIExvY2FsZS5FTkdMSVNIKS5wYXJzZSgiMjAxNi0xMC0xMyIpICksCiAgICAgICAgfTsKCiAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKGdldERheXNCZXR3ZWVuRGF0ZXMoYm9va2luZ3MpKTsKCiAgICB9CgogICAgcHVibGljIHN0YXRpYyBEYXRlIGdldE1heE9jY3VyZW5jZShCb29raW5nW10gYm9va2luZykgewogICAgICAgIExpc3Q8RGF0ZT4gZGF0ZXMgPSBuZXcgQXJyYXlMaXN0PERhdGU+KCk7CiAgICAgICAgRGF0ZSBtYXggPSBuZXcgRGF0ZSgpOwogICAgICAgIGludCBmcmVxID0gMDsKICAgICAgICBmb3IgKEJvb2tpbmcgYiA6IGJvb2tpbmcpIHsKICAgICAgICAgICAgQ2FsZW5kYXIgY2FsZW5kYXIgPSBuZXcgR3JlZ29yaWFuQ2FsZW5kYXIoKTsKICAgICAgICAgICAgY2FsZW5kYXIuc2V0VGltZShiLmdldFN0YXJ0RGF0ZSgpKTsKCiAgICAgICAgICAgIHdoaWxlIChjYWxlbmRhci5nZXRUaW1lKCkuYmVmb3JlKGIuZ2V0RW5kRGF0ZSgpKSkgewogICAgICAgICAgICAgICAgRGF0ZSByZXN1bHQgPSBjYWxlbmRhci5nZXRUaW1lKCk7CiAgICAgICAgICAgICAgICBkYXRlcy5hZGQocmVzdWx0KTsKICAgICAgICAgICAgICAgIGludCBjdXJyID0gQ29sbGVjdGlvbnMuZnJlcXVlbmN5KGRhdGVzLCByZXN1bHQpOwogICAgICAgICAgICAgICAgaWYgKGN1cnIgPiBmcmVxKSB7CiAgICAgICAgICAgICAgICAgICAgZnJlcSA9IGN1cnI7CiAgICAgICAgICAgICAgICAgICAgbWF4ID0gcmVzdWx0OwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgY2FsZW5kYXIuYWRkKENhbGVuZGFyLkRBVEUsIDEpOwogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHJldHVybiBtYXg7CiAgICB9CgogICAgc3RhdGljIGNsYXNzIEJvb2tpbmcgewogICAgICAgIERhdGUgc3RhcnREYXRlOwogICAgICAgIERhdGUgZW5kRGF0ZTsKCiAgICAgICAgcHVibGljIEJvb2tpbmcoRGF0ZSBzdGFydERhdGUsIERhdGUgZW5kRGF0ZSkgewogICAgICAgICAgICB0aGlzLnN0YXJ0RGF0ZSA9IHN0YXJ0RGF0ZTsKICAgICAgICAgICAgdGhpcy5lbmREYXRlID0gZW5kRGF0ZTsKICAgICAgICB9CgogICAgICAgIHB1YmxpYyBEYXRlIGdldFN0YXJ0RGF0ZSgpIHsKICAgICAgICAgICAgcmV0dXJuIHN0YXJ0RGF0ZTsKICAgICAgICB9CgogICAgICAgIHB1YmxpYyB2b2lkIHNldFN0YXJ0RGF0ZShEYXRlIHN0YXJ0RGF0ZSkgewogICAgICAgICAgICB0aGlzLnN0YXJ0RGF0ZSA9IHN0YXJ0RGF0ZTsKICAgICAgICB9CgogICAgICAgIHB1YmxpYyBEYXRlIGdldEVuZERhdGUoKSB7CiAgICAgICAgICAgIHJldHVybiBlbmREYXRlOwogICAgICAgIH0KCiAgICAgICAgcHVibGljIHZvaWQgc2V0RW5kRGF0ZShEYXRlIGVuZERhdGUpIHsKICAgICAgICAgICAgdGhpcy5lbmREYXRlID0gZW5kRGF0ZTsKICAgICAgICB9CiAgICB9Cn0=