<-E 1185> Day of the Week
class Solution {
public:
string dayOfTheWeek(int day, int month, int year) {
vector<int> mon{0,31,28,31,30,31,30,31,31,30,31,30,31};
vector<string> dayofweek{"Sunday", "Monday", "Tuesday",
"Wednesday", "Thursday", "Friday", "Saturday"};
int sum=4;
for(int i=1971;i<year;i++){
if((((i % 4 == 0) && (i % 100 != 0)) ||
(i % 400 == 0)))
sum+=366;
else
sum+=365;
}
for(int i=1;i<month;i++){
if(i==2 && (((year % 4 == 0) && (year % 100 != 0)) ||
(year % 400 == 0)))
sum++;
sum+=mon[i];
}
sum+=day;
return dayofweek[sum%7];
}
};