前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >CCF-CSP日期计算

CCF-CSP日期计算

作者头像
种花家的奋斗兔
发布2020-11-13 10:33:40
8370
发布2020-11-13 10:33:40
举报
文章被收录于专栏:NLP小白的学习历程
代码语言:javascript
复制
// 问题描述

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

// 输入格式

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

// 输出格式

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

// 样例输入

// 2015
//  80

// 样例输出

// 3
//  21

// 样例输入

// 2000
//  40

// 样例输出

// 2
//  9


#include<iostream>
#include<cmath>
#include<algorithm>
using namespace std;

int a[12]={31,29,31,30,31,30,31,31,30,31,30,31};
int b[12]={31,28,31,30,31,30,31,31,30,31,30,31};

bool judge(int year)
{//判断是否为闰年
	if (!(year%400)||(!(year%4)&&(year%100)))
	{
		return true;
	}
	return false;
}


int main()
{
	int y,d;
	cin>>y>>d;//1900到2015
	bool flag=judge(y);
	int month=1;
	int day=0;

	if (flag)
	{//闰年
		int i=0;
		while(d>a[i])
		{
			d-=a[i];
			month++;
			i++;
		}
		day=d;
	}
	else
	{//非闰年
		int i=0;
		while(d>b[i])
		{
			d-=b[i];
			month++;
			i++;
		}
		day=d;
	}
	cout<<month<<endl<<day<<endl;


	return 0;
}
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/11/20 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档