蓝桥杯--日期统计

目录

一、题目

二、解决代码

三、代码分析

​四、另一种思路

五、关于set文章推荐


一、题目

二、解决代码

#include <bits/stdc++.h>
using namespace std;
int main() {
	int arr[100] = { 5,6,8,6,9,1,6,1,2,4,9,1,9,8,2,3,6,4,7,7,5,9,5,0,3,8,7,5,8,1,5,8,6,1,8,3,0,3,7,9,2,
	                 7,0,5,8,8,5,7,0,9,9,1,9,4,4,6,8,6,3,3,8,5,1,6,3,4,6,7,0,7,8,2,7,6,8,9,5,6,5,6,1,4,0,1,
	                 0,0,9,4,8,0,9,1,2,8,5,0,2,5,3,3
	               };
	int month[12] = { 31,28,31,30,31,30,31,31,30,31,30,31 };
	int monthChecke[12] = { 0 };//记录月份访问状态防止重复遍历
	int flag=0;
	int jilu[100000];
	int date_sum;
	for (int i = 0; i < 93; i++) { //年份的第一位只用遍历到倒数第8位即可
		if (arr[i] == 2) {
			for (int j = i + 1; j < 94; j++ ) { //年份的第一位只用遍历到倒数第7位即可
				if (arr[j] ==0) {
					for (int k = j + 1; k < 95; k++) {
						if (arr[k] == 2) {
							for (int l = k + 1; l < 96; l++) {
								if (arr[l] == 3) {
									for (int a = l+1; a < 97; a++) { //年份的第一位只用遍历到倒数第4位即可
										if (arr[a] <2) {// 月份的第一位不能大于2
											for (int b = a+1; b < 98; b++) { //月份的第二位
												int month1 = arr[a] * 10 + arr[b];
												if (0< month1 && month1 <13 && monthChecke[month1-1]==0) { //检查月份是否合法
													//记录月份访问状态防止重复遍历
													monthChecke[month1-1] = 1;
													for (int c = b + 1; c < 99; c++) { //日期的第一位只用遍历到倒数第2位即可
														if (arr[c] < 4) {
															//日期的第一位不能大于3,可以取0,1,2,3
															for (int d = c + 1; d < 100; d++) 
															{ //日期的第二位
																int check = 0;
																int day1 = arr[c] * 10 + arr[d];
																if (0 < day1 && day1 <= month[month1 - 1]) 
																{ 
																	date_sum = month1*100+day1;
																	for(int q=0; q<flag; q++)
																	{
																		if(date_sum == jilu[q])
																		{
																			check = 1;
																			break;
																		}
																	}
																	if(check == 0)
																	{
																		jilu[flag] = date_sum;
																		flag++;
																	}
																}
															}
														}
													}
												}
											}
										}
									}
								}
							}
						}
					}
				}
			}
		}
	}
	cout << flag << endl;
	return 0;
}

 三、代码分析


四、另一种思路

set<int> myset;

用myset来存放四位数日期

解释

set<int> 是 C++ 标准库中的容器,它表示一种集合(Set)数据结构,用于存储一组唯一且有序的整数值。在一个 set 中,每个元素都是唯一的,而且它们是按照一定的顺序进行排列的。

set 支持查找、删除和遍历等操作,而且这些操作的时间复杂度通常是较低的,对于维护一组唯一值非常高效。

代码

五、关于set文章推荐

 http://t.csdnimg.cn/kT222

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

第五节:使用SMB开发WebSocket通信

一、概述 本节主要讲解在SMB中如何进行websocket快速开发&#xff0c;实现客户端连接、关闭、消息通讯等功能。 示例下载&#xff1a;https://download.csdn.net/download/lllllllllluoyi/88949743 二、创建WebSocket服务器 1、在csdnProject工程中新建一个消息流。 添加W…

命名空间多线程计时(C++基础)

命名空间 不要在头文件内使用using namespace&#xff0c;一定要确保实在一个足够小的作用域下使用&#xff0c;在哪个范围内&#xff0c;比如函数、if语句等&#xff0c;但一定不要在头文件中使用&#xff01;&#xff01;&#xff01; 上述示例中&#xff0c;会调用orange中…

windows系统图标变白设置

我们在使用系统的时候&#xff0c;通常会在桌面创建图标&#xff0c;有时候桌面图标过多&#xff0c;整理图标放在新建文件夹的时候&#xff0c;图标变白&#xff0c;通常情况下都是缓存问题&#xff0c;这里也是删除缓存解决演示系统&#xff1a;windows11 1显示图标缓存目录 …

用Python进行机器学习:Scikit-learn的入门与实践【第126篇—Scikit-learn的入门】

用Python进行机器学习&#xff1a;Scikit-learn的入门与实践 随着机器学习在各个领域的广泛应用&#xff0c;Python成为了一个备受欢迎的机器学习工具之一。在众多机器学习库中&#xff0c;Scikit-learn因其简单易用、功能强大而备受青睐。本文将介绍Scikit-learn的基本概念&am…

数据持久化(Json)

平常写代码的时候就应该习惯性的加【SerializeField】System.Serializable 如果是公有变量可以不加 泛型就要用<> JSon语法 之后Lua热更新的学习也会使用Sublime Text Excel转Json https://www.bejson.com/json/col2json 记得检查一下&#xff0c;得到的Json格式是否…

SpringBoot3快速入门

目录 一、快速创建项目 二、手动创建一个工程 一、快速创建项目 1、使用官网提供的spring组件创建一个springboot3工程&#xff0c;springboot3要使用JDK17以上的版本 选择配置点击finish&#xff0c;刷新maven 创建一个controller层&#xff0c;写一个demo&#xff0c;点击运…

Edu 12 --- Simple Subset -- 题解 (一个比较巧妙的思维算法题)

Simple Subset&#xff1a; 题解&#xff1a; 思路解析&#xff1a; 题目要求任意两个数的和为质数&#xff0c;那我们最坏情况就是任意选择一个数&#xff0c;此时子集为最大。 如果子集中有两个奇数或者偶数&#xff0c;他们两个之和一定会被2整除&#xff0c;那么我们只能…

JVM垃圾收集器-serial.parNew,parallelScavnge,serialOld,parallelOld,CMS,G1

垃圾收集器 分代模型 适用于新生代&#xff1a; serial parNew parallel Scaavenge 适用于老年代&#xff1a; CMS serial Old(msc) paraller Old 分区模型 适用于超大容量&#xff1a; G1 分代模型 serial /serial Old收集器 1.单线程收集器 2.收集时会暂停其他线程&…

从零搭建Vue项目

目录 环境准备 NodeJS安装 ​编辑 2. 选择安装目录 3. 验证NodeJS环境变量 4. 配置npm的全局安装路径 5. 切换npm的淘宝镜像 6. 安装Vue-cli Vue项目创建 1. 打开UI界面 2. 打开项目管理器 3. 创建项目 vue项目目录结构介绍 运行vue项目 Vue项目开发流程 Vue组…

k8s CKA upgrade - Kubeadm 版本升级实测

升级版本最好是逐步去升级&#xff0c;不要跨越多个大版本&#xff0c;可能会出错 大体流程&#xff1a; 1.先确定升级版本 2.升级kubeadm 3.驱逐节点 4.升级kubelet和kubectl 5.重启kubelet服务 6.恢复节点&#xff0c;使其上线 1.查看现版本&#xff1a;升级版本 kubectl ge…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的夜间车辆检测系统(深度学习代码+UI界面+训练数据集)

摘要&#xff1a;开发夜间车辆检测系统对于自动驾驶技术具有关键作用。本篇博客详细介绍了如何运用深度学习构建一个夜间车辆检测系统&#xff0c;并提供了完整的实现代码。该系统基于强大的YOLOv8算法&#xff0c;并对比了YOLOv7、YOLOv6、YOLOv5&#xff0c;展示了不同模型间…

oracle临时表空间不释放

项目报错 nested exception is java.sql.SQLException: ORA-01652: unable to extend temp segment by 128 in tablespace TEMP 原因是临时表空间满了&#xff0c;临时表空间一直增长&#xff0c;未释放导致临时表空间使用率100%。 查询临时表空间使用率 --临时表空间利用率…

【MySQL 系列】MySQL 语句篇_DDL 语句

DDL&#xff08; Data Definition Language&#xff0c;数据定义语言&#xff09;用在定义或改变表的结构数据类型、表之间的链接和约束等初始化工作上。常用的语句关键字包括 CREATE、 DROP、 ALTER 等。 文章目录 1、MySQL 中的 DQL 语句2、MySQL 中库表的 DQL 语句详解2.1、…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的常见手势识别系统(深度学习模型+UI界面代码+训练数据集)

摘要&#xff1a;开发手势识别系统对于增强人机交互和智能家居控制领域的体验非常关键。本博客详尽阐述了通过深度学习技术构建手势识别系统的过程&#xff0c;并附上了全套实施代码。系统采用了先进的YOLOv8算法&#xff0c;并通过与YOLOv7、YOLOv6、YOLOv5的性能对比&#xf…

代码学习记录17

随想录日记part17 t i m e &#xff1a; time&#xff1a; time&#xff1a; 2024.03.12 主要内容&#xff1a;今天的主要内容是二叉树的第六部分&#xff0c;主要涉及二叉搜索树的最小绝对差 &#xff1b;二叉搜索树中的众数&#xff1b;二叉树的最近公共祖先。 530.二叉搜索树…

关于c++的protected关键字

关于c的protected关键字 分类引言例子1&#xff09;错误的demo2&#xff09;改正的demo protected在c中的含义与作用 分类 c基础知识 引言 做了很业务&#xff0c;c基础知识却忘了很多&#xff0c;今天看了一个例子&#xff0c;唤醒了我关于c三大特性之一----封装&#xff0…

VulnHub - Lampiao

希望和各位大佬一起学习&#xff0c;如果文章内容有错请多多指正&#xff0c;谢谢&#xff01; 个人博客链接&#xff1a;CH4SER的个人BLOG – Welcome To Ch4sers Blog Lampiao 靶机下载地址&#xff1a;https://www.vulnhub.com/entry/lampiao-1,249/ 0x01 信息收集 Nm…

基于YOLOv8/YOLOv7/YOLOv6/YOLOv5的远距离停车位检测系统(深度学习代码+UI界面+训练数据集)

摘要&#xff1a;开发远距离停车位检测系统对于提高停车效率具有关键作用。本篇博客详细介绍了如何运用深度学习构建一个远距离停车位检测系统&#xff0c;并提供了完整的实现代码。该系统基于强大的YOLOv8算法&#xff0c;并对比了YOLOv7、YOLOv6、YOLOv5&#xff0c;展示了不…

读算法的陷阱:超级平台、算法垄断与场景欺骗笔记08_行为歧视

1. 常见的报价方式 1.1. 水滴定价&#xff08;Drip Pricing&#xff09; 1.1.1. 用一个较低的初始价格吸引消费者入局&#xff0c;之后再不断收取附加费用 1.2. 打折促销 1.2.1. 在一个远被高估的原价上制造折扣价格的魅力 1.2…

免费搭建导航网站教程带免费空间域名源码

使用免费空间和免费域名免费搭建一个导航网站 手把手视频教程 https://pan.xunlei.com/s/VNsoMehs7RCjz3IClV6h2vNMA1?pwdq596#