纯模拟
#include<iostream>
using namespace std;
int month[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int k=0,d=6;
int main()
{
for(int i=2000;i<=2020;i++)
{
if(i%4==0&&i%100!=0||i%400==0)
month[2] = 29;
for(int j=1;j<=12;j++)
{
for(int l=1;l<=month[j];l++)
{
if(d==1||l==1)
k+=2;else
k++;
if(d==7) d=1;
else d++;
if(i==2020&&j==10&&l==1)
{
printf("%d\n",k);
return 0;
}
}
}
if(month[2]==29)
month[2]=28;
}
return 0;
}
```

### 模拟
```
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
string monthh[12]={"January","February","March","April","May","June","July","August","September","October","November","December"};
string dayy[7]={"Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"};
int monthday[13]={0,31,28,31,30,31,30,31,31,30,31,30,31};
int day,year;
string month;
int main()
{
while(cin>>day>>month>>year){
int s=0,c=0,n=0;
for(int i=1;i<year;i++)
{
if(i%4==0&&i%100!=0||i%400==0)
s+=366;
else s+=365;
}
if(year%4==0 && year%100!=0 || year%400==0)
monthday[2] = 29;
else monthday[2] = 28;
for(int i=1;i<=12;i++)
{
if(monthh[i]==month)
{
n=i; break;
}
}
for(int i=1;i<=n;i++)
{
c+=monthday[i];
}
c+=day;
c--;
cout<<dayy[(s+c)%7]<<endl;
}
return 0;
}