include [HTML_REMOVED]
include[HTML_REMOVED]
include[HTML_REMOVED]
using namespace std;
int days[13] = { 0,31,28,31,30,31,30,31,31,30,31,30,31 };
bool checkdate(int date)//检查日期是否合法
{
int year = date / 10000;
int month = date % 10000 / 100;
int day = date % 100;
if (month == 0 || month > 12)return false;
if (date == 0 ||( month != 2 && day > days[month]))return false;
if (month == 2) {
int leap = (year % 100 != 0 && year / 4 == 0) || year % 400 == 0;
if (day > days[month] + 1)
return false;
}
return true;
}
bool checkaa(int date)
{int x=date%10;
date/=10;
int y=date%10;
if(x==y)
return false;
else
return true;
}
int date,date1,date2;
int main()
{scanf(“%d”,&date);
int year1=min(date/10000,date%10000);
for(int i=year1+1;i<9999;i)//枚举得出接下来的第一个回文年
{int date11=i,x=i;
for(int j=0;j<4;j)
{
date11=date11*10+x%10;
x/=10;}
if(date11>date&&checkdate(date11))
{date1=date11;
break;}
}
int ab=date/1000000;
for(int i=ab;i<99;i)//枚举得出接下来的第一个ab年
{int date11=i*100+i;
int x=date11;
for(int j=0;j<4;j)
{
date11=date1110+x%10;
x/=10;}
if(date11>date&&checkdate(date11)&&date11!=date&&checkaa(date11))//第四个条件只是为了过滤掉11111111年这个*答案,题目没说清,ab型中ab不相等。
{date2=date11;
break;}
}
printf(“%d\n”,date1);
printf(“%d\n”,date2);
// 请在此输入您的代码
return 0;
}
blablabla