第十四届蓝桥杯填空题(日期统计)

server/2024/12/22 19:09:22/

问题描述

小蓝现在有一个长度为  100 的数组,数组中的每个元素的值都在  0 到  9 的范围之内。数组中的元素从左至右如下所示:

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

现在他想要从这个数组中寻找一些满足以下条件的子序列:


1.子序列的长度为 8

2.这个子序列可以按照下标顺序组成一个  yyyymmdd 格式的日期,并且要求这个日期是  2023 年中的某一天的日期,例如  20230902, 20231223。 yyyy 表示年份, mm 表示月份,dd 表示天数,当月份或者天数的长度只有一位时需要一个前导零补充。

请你帮小蓝计算下按上述条件一共能找到多少个不同的 2023 年的日期。对于相同的日期你只需要统计一次即可。

答案提交

这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

//从第一个2开始就行,所以长度为92

import java.util.*;
import java.math.*;
public class Main{public static void main(String[] args) {Scanner scan = new Scanner(System.in);int[] a=new int[92];for(int i=0;i<92;i++){a[i]=scan.nextInt();}HashSet<Integer> set=new HashSet<>();for(int a1=0;a1<=84;a1++) {for(int a2=a1+1;a2<=85;a2++) {for(int a3=a2+1;a3<=86;a3++) {for(int a4=a3+1;a4<=87;a4++) {int year=a[a1]*1000+a[a2]*100+a[a3]*10+a[a4];if(year==2023) {for(int a5=a4+1;a5<=88;a5++) {for(int a6=a5+1;a6<=89;a6++) {int month=a[a5]*10+a[a6];if(month>=1&&month<=12) {for(int a7=a6+1;a7<=90;a7++) {for(int a8=a7+1;a8<=91;a8++) {int day=a[a7]*10+a[a8];if(day>=1&&day<=31) {if(check(year,month,day)) {int num=(year*100+month)*100+day;set.add(num);}}}}}}}}}}}}System.out.println(set.size());scan.close();}public static boolean check(int year,int month,int day){if(month==2&&day<=28){return true;}if(month==1||month==3||month==5||month==7||month==8||month==10||month==12){if(day>=1&&day<=31){return true;}else{return false;}}if(month==4||month==6||month==9||month==11){if(day>=1&&day<=30){return true;}else{return false;}}return false;}
}


http://www.ppmy.cn/server/8637.html

相关文章

【Linux】进程和计划任务

目录 一、进程介绍 1.1 进程与线程的定义 1.1.1 进程(Process)** 1.1.2 线程(Thread)** 1.1.3 进程与线程的区别 1.2 进程的特征 1.3 进程状态 1.3.1 进程的基本状态 1.3.2 进程更多的状态 1.4 进程的优先级 1.5 进程间通信 1.6 进程的分类* 二、进程管理 2.1 查看…

CentOS 安装 PHP 7

1. 安装 epel-release 1. 什么是epel 如果既想获得 RHEL 的高质量、高性能、高可靠性&#xff0c;又需要方便易用(关键是免费)的软件包更新功能&#xff0c;那么 Fedora Project 推出的 EPEL(Extra Packages for Enterprise Linux)正好适合你。 EPEL 是由 Fedora 社区打造&a…

一二三应用开发平台使用手册——系统管理-用户组-使用说明

概述 在RBAC模型中&#xff0c;资源、角色、用户三个关键元素&#xff0c;构成权限体系。在平台设计和实现的时候&#xff0c;以下几个核心问题思考如下&#xff1a; 角色&#xff0c;单层平铺还是树形结构&#xff1f; 在小型应用中&#xff0c;角色数量有限的情况下&#x…

【Leetcode笔记】501.二叉搜索树中的众数

文章目录 题目要求ACM 模式代码知识点 题目要求 给你一个含重复值的二叉搜索树&#xff08;BST&#xff09;的根节点 root &#xff0c;找出并返回 BST 中的所有 众数&#xff08;即&#xff0c;出现频率最高的元素&#xff09;。 如果树中有不止一个众数&#xff0c;可以按 …

IDEA报错然后pycharm闪退

pycharm闪退&#xff0c;在C盘的USER文件夹下有报错文件 打开一看&#xff0c;说内存不足 # There is insufficient memory for the Java Runtime Environment to continue. # Native memory allocation (mmap) failed to map 14596177920 bytes for G1 virtual space # Possib…

2024年高校辅导员考试题库及答案

一、选择题 4.根据宪法和法律&#xff0c;可以制定行政法规的是&#xff1a;&#xff08;&#xff09; A.全国人民代表大会&#xff1b; B.全国人民代表大会常务委员会&#xff1b; C.国务院&#xff1b; D.国家教育部 答案&#xff1a;C …

os模块学习

【一】文件路径相关的操作 【1】获取当前文件所在的文件夹路径 # os.path.dirname(__file__) ​ import os file_name os.path.dirname(__file__) print(file_name) # H:\pycharm projects\day\模块学习2 【2】获取当前文件所在的文件路径 # os.path.abspath(__fil…

计算机网络实验实验之VLAN的配置与分析

实验目的 了解什么是带内管理&#xff1b;熟练掌握如何使用telnet方式管理交换机&#xff1b;熟练掌握如何为交换机设置web方式管理&#xff1b;熟练掌握如何进入交换机web管理方式&#xff1b;了解交换机web配置界面&#xff0c;并能进行部分操作。 (6)了解VLAN原理&#xf…