#include <iostream> using namespace std; int main() { int year,month,day; int GetMonthDay[13]={0,31,59,90,120,151,181,212,243,273,304,334,365};//创建一个数组里面存放每个月累计的日期 while(cin>>year>>day) { month=0; while(day>=GetMonthDay[month]) { ++month; } day-=GetMonthDay[month-1]; if(day==0) { --month; day=GetMonthDay[month]-GetMonthDay[month-1]; } if(month>2&&((year%4==0&&year%100!=0)||(year%400==0))) { --day; if(day==0) { --month; day=GetMonthDay[month]-GetMonthDay[month-1]+1; } } printf("%04d-%02d-%02d\n",year,month,day); } return 0; } // 64 位输出请用 printf("%lld")