CCF-201509-2 日期计算
问题描述
试题编号: | 201509-2 |
试题名称: | 日期计算 |
时间限制: | 1.0s |
内存限制: | 256.0MB |
问题描述: | 问题描述 给定一个年份y和一个整数d,问这一年的第d天是几月几日? 输入格式 输入的第一行包含一个整数y,表示年份,年份在1900到2015之间(包含1900和2015)。 输出格式 输出两行,每行一个整数,分别表示答案的月份和日期。 样例输入 2015 样例输出 3 样例输入 2000 样例输出 2 |
程序代码:
#include<iostream>
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<<month<<endl<<day<<endl;
return 0;
}