洛谷P5737 【深基7.例3】闰年展示 C语言/C++

news2024/11/19 9:23:52

【深基7.例3】闰年展示

题目描述

输入 x , y x,y x,y,输出 [ x , y ] [x,y] [x,y] 区间中闰年个数,并在下一行输出所有闰年年份数字,使用空格隔开。

输入格式

输入两个正整数 x , y x,y x,y,以空格隔开。

输出格式

第一行输出一个正整数,表示 [ x , y ] [x,y] [x,y] 区间中闰年个数。

第二行输出若干个正整数,按照年份单调递增的顺序输出所有闰年年份数字。

样例 #1

样例输入 #1

1989 2001

样例输出 #1

3
1992 1996 2000

提示

数据保证, 1582 ≤ x < y ≤ 3000 1582\le x < y \le 3000 1582x<y3000

所需变量
int x;//用于存储初始年份

int y;//用于存储终止年份

int i;//循环变量

int sum = 0;//用于统计有多少个闰年

int arr[400] = {0};//用于放每个闰年,方便后续输出

思路:我们首先编写一个判断是否是闰年的函数方法,如果是闰年返回1,如果不是闰年返回0,代码如下:

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

然年后对每个输入的年份进行判断,如果是闰年,我们呢就首先将该数存入arr数组,然后让sum++,这样就达到我们想要的目的了。不断遍历下去,就能得到我们想要的结果了,然后再将sum和arr数组中的元素输出出来就可以了!
该算法本人认为比较优,如果有更好的想法,欢迎q我!

#include<iostream>
using namespace std;
int solution(int x){
    if(((x%4 == 0)&&(x%100!= 0))||(x%400 == 0)){
        return 1;
    }
    return 0;
}
int main(){
    int x,y,i,sum = 0;
    int arr[400] = {0};
    cin>>x>>y;
    for(i = x;i<=y;i++){
        if(solution(i)){
            arr[sum++] = i;
        }
    }
    cout<<sum<<endl;
    for(i = 0;i<sum;i++){
        if(i == 0){
            cout<<arr[i];
        }else{
            cout<<" "<<arr[i];
        }
    }
    cout<<endl;
    return 0;
}

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/371391.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

路漫漫:网络空间的监管趋势

网络空间是“以相互依存的网络基础设施为基本架构&#xff0c;以代码、信息与数据的流动为环境&#xff0c;人类利用信息通讯技术与应用开展活动&#xff0c;并与其他空间高度融合与互动的空间”。随着信息化技术的发展&#xff0c;网络空间日益演绎成为与现实人类生存空间并存…

Spring Cloud @RefreshScope 原理分析:代理类调用流程

背景 本文类分析 SpringCloud 的 RefreshScope 注解的 refresh 类型下&#xff0c;获取实例的过程。关键技术点&#xff1a; 扫描过程中对 RefreshScope 注解做了特殊处理&#xff0c;会额外注册两个BeanDefinition。GenericScope 实现了 BeanDefinitionRegistryPostProcesso…

[JVM]JVM内存模型,类加载过程,双亲委派模型

文章目录1. JDK,JRE,JVM分别是什么&#xff0c;它们之间有什么联系&#xff1f;2. JVM内存区域划分3. JVM类加载过程4. 一个经典面试题5. JVM 双亲委派模型1. JDK,JRE,JVM分别是什么&#xff0c;它们之间有什么联系&#xff1f; JDK: 是Java开发工具包&#xff0c;包含了编写&…

9、面向对象、泛型与反射

目录一、构造函数二、继承与重写三、泛型四、反射1 - 反射的基本概念2 - 反射的基础数据类型3 - 反射APIa - 获取Type类型b - 获取struct成员变量的信息c - 获取struct成员方法的信息d - 获取函数的信息e - 判断类型是否实现了某接口五、reflect.Valuea - 空value判断b - 获取V…

分布式算法 - Paxos算法

Paxos算法是Lamport宗师提出的一种基于消息传递的分布式一致性算法&#xff0c;使其获得2013年图灵奖。自Paxos问世以来就持续垄断了分布式一致性算法&#xff0c;Paxos这个名词几乎等同于分布式一致性, 很多分布式一致性算法都由Paxos演变而来。Paxos算法简介Paxos算法是Lampo…

【RabbitMQ笔记05】消息队列RabbitMQ七种模式之Routing路由键模式

这篇文章&#xff0c;主要介绍消息队列RabbitMQ七种模式之Routing路由键模式。 目录 一、消息队列 1.1、Routing模式 1.2、案例代码 &#xff08;1&#xff09;引入依赖 &#xff08;2&#xff09;编写生产者 &#xff08;3&#xff09;编写消费者 一、消息队列 1.1、Ro…

我为什么选择Linux mint 21.1 “Vera“ ? Mint安装优化调教指南(分辨率DPI)

前言&#xff1a;为什么是Mint 笔者算是Linux老用户了&#xff0c;作为一个后端开发&#xff0c;尝试了多种不同发行版。 一开始是Manjaro这种Arch系&#xff0c;但是其对于开发而言实在是太过不稳定&#xff1b;每次滚动更新都要解决很多冲突。不适合当生产力&#xff08;本…

Python实现贝叶斯优化器(Bayes_opt)优化支持向量机分类模型(SVC算法)项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。1.项目背景贝叶斯优化器(BayesianOptimization) 是一种黑盒子优化器&#xff0c;用来寻找最优参数。贝叶斯优化器是基…

动态规划-规划兼职工作

动态规划-规划兼职工作 一、问题描述 你打算利用空闲时间来做兼职工作赚些零花钱。这里有 n 份兼职工作&#xff0c;每份工作预计从 startTime 开始到 endTime 结束&#xff0c;报酬为 profit。给你一份兼职工作表&#xff0c;包含开始时间 startTime&#xff0c;结束时间 en…

Netty入门学习笔记1-定义

1、定义 Netty 是一个异步的、基于事件驱动的网络应用框架&#xff0c;用于快速开发可维护、高性能的网络服务器和客户端。 官网&#xff1a;Netty: Home 2、地位 Netty 在 Java 网络应用框架中的地位就好比&#xff1a;Spring 框架在 JavaEE 开发中的地位 以下的框架都使…

在Kotlin中探索 Activity Results API 极简的解决方案

Activity Results APIActivity Result API提供了用于注册结果、启动结果以及在系统分派结果后对其进行处理的组件。—Google官方文档https://developer.android.google.cn/training/basics/intents/result?hlzh-cn一句话解释&#xff1a;官方Jetpack组件用于代替startActivity…

【Vue学习】Vue高级特性

1. 自定义v-model Vue中的自定义v-model指的是在自定义组件中使用v-model语法糖来实现双向绑定。在Vue中&#xff0c;通过v-model指令可以将表单元素的值与组件实例的数据进行双向绑定。但是对于自定义组件&#xff0c;如果要实现v-model的双向绑定&#xff0c;就需要自定义v-…

Kotlin 高端玩法之DSL

如何在 kotlin 优雅的封装匿名内部类&#xff08;DSL、高阶函数&#xff09;匿名内部类在 Java 中是经常用到的一个特性&#xff0c;例如在 Android 开发中的各种 Listener&#xff0c;使用时也很简单&#xff0c;比如&#xff1a;//lambda button.setOnClickListener(v -> …

每日资源分享(彩虹外链PHP网盘V5.4更新 新增用户系统与分块上传)

demo软件园每日更新资源 1.跟我一起写Python 完整版PDF Python 就为我们提供了非常完善的基础代码库&#xff0c;覆盖了网络、文件、GUI、数据库、文本等大量内容。用 Python 开发&#xff0c;许多功能不必从零编写&#xff0c;直接使用现成的即可。 《跟我一起写 Python》是笔…

C++设计模式(20)——迭代器模式

亦称&#xff1a; Iterator 意图 迭代器模式是一种行为设计模式&#xff0c; 让你能在不暴露集合底层表现形式 &#xff08;列表、 栈和树等&#xff09; 的情况下遍历集合中所有的元素。 问题 集合是编程中最常使用的数据类型之一。 尽管如此&#xff0c; 集合只是一组对…

【数据库】 SQLServer

SQL Server 安装 配置 修改SQL Server默认的数据库文件保存路径_ 认识 master &#xff1a;是SQL Server中最重要的系统数据 库&#xff0c;存储SQL Server中的元数据。 Model&#xff1a;模板数据库&#xff0c;在创建新的数据库时&#xff0c;SQL Server 将会复制此数据…

FreeRTOS的Delay函数

两个Delay函数有两个延时函数vTaskDelay&#xff1a;至少等待指定个数的Tick Interrupt才能变为就绪态xTaskDelayUtil&#xff1a;等待到指定的绝对时刻&#xff0c;才能变为就绪态个人感觉这两个延时函数就是&#xff0c;比如一个我等3个小时&#xff0c;一个是我等到下午3点的…

HTML5 Drag and Drop

这是2个组合事件 dom对象分源对象和目标对象 绑定的事件也是分别区分源对象和目标对象 事件绑定 事件顺序 被拖拽元素&#xff0c;事件触发顺序是 dragstart->drag->dragend&#xff1b; 对于目标元素&#xff0c;事件触发的顺序是 dragenter->dragover->drop/…

Python|每日一练|链表|双指针|数组|递归|图算法|单选记录:删除链表的倒数第 N 个结点|下一个排列|迷宫问题

1、删除链表的倒数第 N 个结点&#xff08;链表&#xff0c;双指针&#xff09; 给你一个链表&#xff0c;删除链表的倒数第 n 个结点&#xff0c;并且返回链表的头结点。 进阶&#xff1a;你能尝试使用一趟扫描实现吗&#xff1f; 示例 1&#xff1a; 输入&#xff1a;head …

ccc-pytorch-感知机算法(3)

文章目录单一输出感知机多输出感知机MLP反向传播单一输出感知机 内容解释&#xff1a; w001w^1_{00}w001​&#xff1a;输入标号1连接标号0&#xff08;第一层&#xff09;x00x_0^0x00​&#xff1a;第0层的标号为0的值O11O_1^1O11​:第一层的标号为0的输出值t&#xff1a;真实…