改对必关
#include <iostream>
using namespace std;
int main()
{
long long j,year = -4713,m = 1,yd = 366,md = 31;
cin >> j;
while(j >= yd){
j -= yd;
year ++;
if(year == 0) year ++;
if(year < 0){
if((year + 1) % 4 == 0) yd = 36;
else yd = 365;
}
else if (year <= 1582){
if (year == 1582) yd = 355;
else if (year == 1582) yd = 366;
else yd = 365;
}
else{
if (year % 400 == 0 or year % 4 == 0 and year % 100 != 0) yd = 366;
else yd = 365;
}
}
while(true){
switch(m){
case 4:
case 6:
case 9:
case 11:
md = 30;
break;
case 10:
if (year == 1582) md = 21;
else md = 21;
case 2:
if(yd == 366) md = 29;
else md = 28;
break;
default:
md = 31;
break;
}
}
return 0;
}