第二题:合法日期

news/2024/5/20 21:23:46

题目描述

小蓝正在上小学,老师要求同学们在暑假每天记日记。可是小蓝整个暑假都在玩,直到最后一天才想起要记日记。于是小蓝赶紧编了一些日记交给老师。

没想到,日记很快就被老师发现了问题,原来小蓝记完 8 月 31 日的日记,竟又记了 8 月 32 日和 8 月 33 日的日记。这显然是有问题的,因为根本没有 8 月 32 日和 8 月 33 日。

给定一个月份和一个日期,请问 2021 年有没有这一天。

输入描述

输入的第一行包含一个整数 m,表示月份。

第二行包含一个整数 d,表示日期。

其中,1≤m≤20,1≤d≤40。

输出描述

如果2021年有 m 月 d 日,输入 yes,否则输出 no

输入输出样例

示例 1

输入

8
32

输出

no

示例 2

输入

2
28

输出

yes

运行限制

  • 最大运行时间:1s
  • 最大运行内存: 128M

分析:

在公历中,大多数月份的天数是固定的,但有几个月份的天数会根据年份的不同而变化。以下是每个月份的天数规则:

  • 1月:31天
  • 2月:28天(闰年为29天)
  • 3月:31天
  • 4月:30天
  • 5月:31天
  • 6月:30天
  • 7月:31天
  • 8月:31天
  • 9月:30天
  • 10月:31天
  • 11月:30天
  • 12月:31天

要确定某一年的某个月是31天还是30天,你可以根据上述规则直接判断。例如,如果你想知道2024年的4月有多少天,你可以直接查看规则,知道4月有30天。

在编程中,你可以根据这些规则来判断某一年的某个月的天数。例如,在C语言中,你可以这样写:

#include <stdio.h>int main() {int year, month;printf("请输入年份和月份(例如:2024 4):");scanf("%d %d", &year, &month);int days;switch (month) {case 1: case 3: case 5: case 7: case 8: case 10: case 12:days = 31;break;case 4: case 6: case 9: case 11:days = 30;break;case 2:days = (year % 4 == 0 && year % 100 != 0) || (year % 400 == 0) ? 29 : 28;break;default:printf("请输入有效的月份。\n");return 1;}printf("%d年的%d月有%d天。\n", year, month, days);return 0;
}

 这段代码使用switch语句来判断月份,并根据月份返回相应的天数。对于2月,它使用了一个单独的条件判断来确定是否是闰年。如果输入的月份不是1到12之间的数字,程序会提示用户输入有效的月份。

代码:

#include <stdio.h>
#include <stdlib.h>int main(int argc, char *argv[]) {int m,d;int a[21] = {0,31,28,31,30,31,30,31,31,30,31,30,31};scanf("%d%d",&m,&d);if(d<=a[m]) printf("yes");else printf("no");return 0;
}


https://www.xjx100.cn/news/3366600.html

相关文章

Android源码笔记-输入事件(一)

这一节主要了解一下Android输入事件源码&#xff0c;Android输入系统的工作原理概括来说&#xff0c;就是监控/dev/input/下的所有设备节点&#xff0c;当某个节点有数据可读时&#xff0c;将数据读出并进行一系列的加工&#xff0c;然后在所有的窗口中寻找合适的事件接收者&am…

Solana 线下活动回顾|多方创新实践,引领 Solana“文艺复兴”新浪潮

Solana 作为在过去一年里实现突破式飞跃的头部公链&#xff0c;究竟是如何与 Web3 行业共振&#xff0c;带来全新的技术发展与生态亮点的呢&#xff1f;在 3 月 24 日刚结束的「TinTin Destination Moon」活动现场&#xff0c;来自 Solana 生态的的专家大咖和 Web3 行业的资深人…

演绎推理【科学推理】

演绎推理是集观察&#xff0c;实验&#xff0c;类比&#xff0c;联想&#xff0c;联想&#xff0c;经验归纳为一体的推理方法。 特点是有一般到特殊&#xff0c;有分析&#xff0c;综合&#xff0c;化归等解题策略。 正推是充分性&#xff0c; 反推是必要性。 小充分 …

谈谈你对 ES6 的理解

es6 是一个新的标准&#xff0c;它包含了许多新的语言特性和库&#xff0c;是 JS 最实质性的一次升级。 比如箭头函数、字符串模板、generators(生成器)、async/await、解构赋值、class等等&#xff0c;还有就是引入 module 模块的概念。 箭头函数可以让 this 指向固定化&…

【算法每日一练]-数论(保姆级教程 篇1 埃氏筛,欧拉筛)

目录 保证给你讲透讲懂 第一种&#xff1a;埃氏筛法 第二种&#xff1a;欧拉筛法 题目&#xff1a;质数率 题目&#xff1a;不喜欢的数 思路&#xff1a; 问题&#xff1a;1~n 中筛选出所有素数&#xff08;质数&#xff09; 有两种经典的时间复杂度较低的筛法&#xff0…

[实验报告]--基于端口安全

[实验报告] 目录 [实验报告] 一、项目背景 二、实验环境 三、项目规划设计 四、项目实施 五、验证项目成果 基于端口安全的 Jan16 公司网络组建 一、项目背景 Jan16 公司开发部为重要部门&#xff0c;所有员工使用指定的计算机工作&#xff0c;为防止员工或访客使 用个…

【c++基础】数池塘(四方向)

说明 农夫约翰的农场可以表示成N*M&#xff08;1≤N、M≤100&#xff09;个方格组成的矩形。由于近日的降雨&#xff0c;在约翰农场上的不同地方形成了池塘。每一个方格或者有积水&#xff08;W&#xff09;或者没有积水&#xff08;.&#xff09;。农夫约翰打算数出他的农场上…

Smart-Config SpringBoot动态变更配置 单机版apollo

Smart-Config&#xff08;单机Apollo&#xff09; 智能配置&#xff1a;单体应用下的动态配置。主要用来解决在单体应用没有配置中心时&#xff0c;想要实现动态变更配置&#xff0c;程序自动处理配置变更&#xff0c;给字段赋值的痛点。可以理解为单机版的Apollo。Apollo是携…