原本70分,一改就没输出了!在线求调
查看原帖
原本70分,一改就没输出了!在线求调
541224
FQY_0307楼主2024/8/7 19:45
#include<iostream>
using namespace std;
int main(){
	int from,to;
	cin>>from>>to;
	int year=from/10000;
	int month=from/100%100;
	int day=from%100;
	int sum=0;
	while(year*10000+month*100+day<=to){
		int a,b,c,d;
		d=month/10%10;
		c=month%10;
		b=day/10%10;
		a=day%10;
		if(d+10*c+100*b+1000*a==year){
			sum++;
		}
		if(month==1||month==3||month==5||month==7||month==8||month==10||month==12){
			if(day==31){
				day=0;
				if(month==12){
					month=1;
					year++;
				}
			}
		}
		else if(month==2&&day==28){
			if(!((year%4==0&&year%100!=0)||year%400==0)){
				day=0;
				month++;
			}
		}
		else if(month==2&&day==29){
			day=0;
			month++;
		}
		else{
			if(day==30){
				day=0;
				month++;
			}
		}
		day++;
	}
	cout<<sum;
	return 0;
}

感觉可读性还挺高的,大佬帮忙看看,谢谢

2024/8/7 19:45
加载中...