CCF201509-2 日期计算

CCF201509-2 日期计算

问题描述

试题编号: 201509-2
试题名称: 日期计算
时间限制: 1.0s
内存限制: 256.0MB
问题描述:

问题描述

  给定一个年份y和一个整数d,问这一年的第d天是几月几日?
  注意闰年的2月有29天。满足下面条件之一的是闰年:
  1) 年份是4的整数倍,而且不是100的整数倍;
  2) 年份是400的整数倍。

输入格式

  输入的第一行包含一个整数y,表示年份,年份在1900到2015之间(包含1900和2015)。
  输入的第二行包含一个整数dd在1至365之间。

输出格式

  输出两行,每行一个整数,分别表示答案的月份和日期。

样例输入

2015
80

样例输出

3
21

样例输入

2000
40

样例输出

2
9

程序代码:

#include
using namespace std;

int days[13] = {29,31,28,31,30,31,30,31,31,30,31,30,31};

int isleap(int year) 
{
	if((year%4==0 && year%100!=0) || year%400==0)
    	return 1;
    return 0;
}

int main()
{
	int y,d;
	cin>>y>>d;
	int month = 1,day = 0;
	int i = 1;
	while(d--)
	{
		day++;
		if(days[i]+1==day)
		{
			day = 1;
			month++;
			i = month;
			if(isleap(y)&&month==2)
				i = 0;
		}
	}
	cout<

 

你可能感兴趣的:(CCF,C++)