大一新生的简单oj题

大一新生的简单oj题

问题描述:

此代码只能通过2/3的样例,求大佬帮忙找找漏掉的情况,多谢了,第二次发了。
题是求两个日期之间的回文日期,输入日期起始和截止,输出回文日期数。
#include<stdio.h>
int main()
{
int a,b,i,j,k,n1,n2,sum=0;
scanf("%d %d",&a,&b);

n1=a/10000;
n2=b/10000;
int x[4]={0};
for(i=n1;i<=n2;i++){
int day[99]={31,28,31,30,31,30,31,31,30,31,30,31};
if((i%4==0&&i%100!=0)||i%400==0)
day[1]=29;
x[0]=i/1000;
x[1]=i/100-x[0]10;
x[3]=i%10;
x[2]=(i%100-x[3])/10;
//判断可能的回文是否在日期之内且日期正常
if(i*10000+x[3]*1000+x[2]*100+x[1]*10+x[0]>=a&&i
10000+x[3]*1000+x[2]*100+x[1]*10+x[0]<=b&&day[x[3]*10+x[2]-1]>=x[1]*10+x[0])
sum++;
}
printf("%d",sum);
return 0;
}

img

img

输出
输出一行,包含一个整数,表示在date1和date2之间,有多少个日期是回文的
 样例输入Copy
   2011910120111231
  样例输出Copy
     在这里输入你要搜索的内容
                                                                                                      L

能重发一下代码吗?

img

img

都不对,大致补上去后运行测试连测试用例也通过不了