返回题解分享
讨论 / 题解分享/ 帖子详情

纪念日(结果填空) - 题解

#include <bits.stdc++.h>
using namespace std;

//20.1B2 纪念日
//偷了点懒没写else
void days(int &yyyy, int &mm, int &dd, int &count)
{
	if(mm==1 || mm==3 || mm==5 || mm==7 || mm==8 || mm==10 || mm==12)
	{
		if(mm==12 && dd==31)
		{
			yyyy++;
			dd=1;
			mm=1;
			count++;
		}
		if(dd>0 && dd<31)
		{
			dd++;
			count++;
		}
		else if(dd==31)
		{
			dd=1;
			mm++;
			count++;
		}
	}
	else if(mm==4 || mm==6 || mm==9 || mm==11)
	{
		if(dd>0 && dd<30)
		{
			dd++;
			count++;
		}
		else if(dd==30)
		{
			dd=1;
			mm++;
			count++;
		}
	}
	else if(mm==2)
	{
		if((yyyy%4==0 && yyyy%100!=0) || yyyy%400==0)
		{
			if(dd>0 && dd<29)
			{
				dd++;
				count++;
			}
			else if(dd==29)
			{
				dd=1;
				mm++;
				count++;
			}
		}
		else if(yyyy>1900 && yyyy<2050)
		{
			if(dd>0 && dd<28)
			{
				dd++;
				count++;
			}
			else if(dd==28)
			{
				dd=1;
				mm++;
				count++;
			}
		}
	}
}
int main()
{
	int yyyy=1921;
	int mm=7;
	int dd=23;
	int count=0;
	while(yyyy!=2020 || mm!=7 || dd!=1)
	{
		days(yyyy, mm, dd, count);
	}
	int minutes=24*60*count;
	cout << minutes << endl;
	return 0;
}
0 回复 0 转发 0 喜欢 3 阅读
回复 (0)
默认 最新
暂无回复,快来抢沙发!