cd24240 2021-12-17 15:53 采纳率: 71.4%
浏览 44
已结题

大一新生的简单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

  • 写回答

1条回答 默认 最新

  • 藏猊 2021-12-17 18:11
    关注

    能重发一下代码吗?

    img

    img

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 已结题 (查看结题原因) 12月19日
  • 已采纳回答 12月19日
  • 创建了问题 12月17日