CCF真题之日期计算

201509-2 日期计算

问题描述

  给定一个年份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>
using namespace std;
int main()
{
 
 int i,y,d,month,day;
 bool lear(int year);
 while(cin>>y>>d)
 {
  //注意:数组初始化应在循环内
  int a[13]={0,31,59,90,120,151,181,212,243,273,304,334,365};//每个月份在这一年的总天数
  if(lear(y))
  {
    for(i=2;i<13;i++)
    a[i]=a[i]+1; 
  }
  for(i=0;i<13;i++)
  {
   if(d<=a[i])
   {
    month=i;
       day=d-a[i-1];
       break;//注意,记得加break语句
   }
   
  }
  cout<<month<<endl<<day<<endl;
 }
 return 0;
}
bool lear(int year)
{
 if((year%4==0&&year%100!=0)||year%400==0)
 return true;
 else
 return false;
}

时间: 2024-10-20 21:23:15

CCF真题之日期计算的相关文章

CCF认证真题-(201509-2)-日期计算

1 #include <iostream> 2 using namespace std; 3 int month[2][13] {{0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}, 4 {0, 31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}}; 5 6 bool isLeap(int y) 7 { 8 return y % 400 == 0 || (y % 4 == 0 &&

给定n个不同的整数,问这些数中有多少对整数,它们的值正好相差1(ccf真题)

ccf认证考试2014年9月第一题 问题描述 给定n个不同的整数,问这些数中有多少对整数,它们的值正好相差1. 输入格式 输入的第一行包含一个整数n,表示给定整数的个数. 第二行包含所给定的n个整数. 输出格式 输出一个整数,表示值正好相差1的数对的个数. 样例输入 6 10 2 6 3 7 8 样例输出 3 样例说明 值正好相差1的数对包括(2, 3), (6, 7), (7, 8). 评测用例规模与约定 1<=n<=1000,给定的整数为不超过10000的非负整数. #include<

图像旋转(ccf真题)

ccf认证2015年3月第一题 问题描述 旋转是图像处理的基本操作,在这个问题中,你需要将一个图像逆时针旋转90度. 计算机中的图像表示可以用一个矩阵来表示,为了旋转一个图像,只需要将对应的矩阵旋转即可. 输入格式 输入的第一行包含两个整数n, m,分别表示图像矩阵的行数和列数. 接下来n行每行包含m个整数,表示输入的图像. 输出格式 输出m行,每行包含n个整数,表示原始矩阵逆时针旋转90度后的矩阵. 样例输入 2 3 1 5 3 3 2 4 样例输出 3 4 5 2 1 3 评测用例规模与约定

CCF真题之最优灌溉

201412-4 问题描述 雷雷承包了很多片麦田,为了灌溉这些麦田,雷雷在第一个麦田挖了一口很深的水井,所有的麦田都从这口井来引水灌溉. 为了灌溉,雷雷需要建立一些水渠,以连接水井和麦田,雷雷也可以利用部分麦田作为“中转站”,利用水渠连接不同的麦田,这样只要一片麦田能被灌溉,则与其连接的麦田也能被灌溉. 现在雷雷知道哪些麦田之间可以建设水渠和建设每个水渠所需要的费用(注意不是所有麦田之间都可以建立水渠).请问灌溉所有麦田最少需要多少费用来修建水渠. 输入格式 输入的第一行包含两个正整数n, m,

14年12月CCF真题5-货物调度

问题描述 某公司要处理一个周期性的物流问题. 有n个城市,第i个城市在每周的第j(1≤j≤7) 天会生产aij吨某种货物,同时 需要消耗bij吨该种货物.已知每周的产量等于消耗量(即aij之和等于bij之和). 城市之间有m条道路,第k条道路连接了城市sk和tk.一条道路上运输1吨 货物有一个固定的成本ck.道路都可以双向使用.每天运输的货物量没有限制.城市之间的距离并不远,货物可以从任意一个城市运输到任意另一个城市并且在当天到达. 货物如果在当天没有被消耗掉,就需要存放在仓库里过夜.第i个城市

CCF真题之画图

201409-2 问题描述 在一个定义了直角坐标系的纸上,画一个(x1,y1)到(x2,y2)的矩形指将横坐标范围从x1到x2,纵坐标范围从y1到y2之间的区域涂上颜色. 下图给出了一个画了两个矩形的例子.第一个矩形是(1,1) 到(4, 4),用绿色和紫色表示.第二个矩形是(2, 3)到(6, 5),用蓝色和紫色表示.图中,一共有15个单位的面积被涂上颜色,其中紫色部分被涂了两次,但在计算面积时只计算一次.在实际的涂色过程中,所有的矩形都涂成统一的颜色,图中显示不同颜色仅为说明方便. 给出所有

首届CCF真题5-任务调度

问题描述 有若干个任务需要在一台机器上运行.它们之间没有依赖关系,因此 可以被按照任意顺序执行. 该机器有两个 CPU 和一个 GPU.对于每个任务,你可以为它分配不 同的硬件资源: 1. 在单个 CPU 上运行. 2. 在两个 CPU 上同时运行. 3. 在单个 CPU 和 GPU 上同时运行. 4. 在两个 CPU 和 GPU 上同时运行. 一个任务开始执行以后,将会独占它所用到的所有硬件资源,不得中 断,直到执行结束为止.第 i 个任务用单个 CPU,两个 CPU,单个 CPU 加 GPU

14年12月CCF真题3-集合竞价

问题描述 某股票交易所请你编写一个程序,根据开盘前客户提交的订单来确定某特 定股票的开盘价和开盘成交量. 该程序的输入由很多行构成,每一行为一条记录,记录可能有以下几种: 1. buy p s 表示一个购买股票的买单,每手出价为p,购买股数为s. 2. sell p s 表示一个出售股票的卖单,每手出价为p,出售股数为s. 3. cancel i表示撤销第i行的记录. 如果开盘价为p0,则系统可以将所有出价至少为p0的买单和所有出价至多 为p0的卖单进行匹配.因此,此时的开盘成交量为出价至少为p

15年3月CCF真题3-节日

问题描述 有一类节日的日期并不是固定的,而是以“a月的第b个星期c”的形式定下来的,比如说母亲节就定为每年的五月的第二个星期日. 现在,给你a,b,c和y1, y2(1850 ≤ y1, y2 ≤ 2050),希望你输出从公元y1年到公元y2年间的每年的a月的第b个星期c的日期. 提示:关于闰年的规则:年份是400的整数倍时是闰年,否则年份是4的倍数并且不是100的倍数时是闰年,其他年份都不是闰年.例如1900年就不是闰年,而2000年是闰年. 为了方便你推算,已知1850年1月1日是星期二.