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

第十四届蓝桥杯大赛软件赛省赛 C/C++ 大学 B 组 如何算,sum[i]代表从根走到i节点需要花多少时间,那么从u到v(后文表示为dis(u,v))则需要花sum[u]+sum[v]-sum[lca(u,v)]*2这么多时间,如果删去一个点i后,全程答案为 asum - dis(a[i],a[i+1]) - dis(a[i],a[i-1]) + dis(a[i-1],a[i+1]),删掉开头和结尾特判,入代码所示。对结尾字符出现次数做前缀和,枚举a字符开头的位置,假设s[i]是a字符,那么i+k-1以后的出现的b都可以作为答案。复杂度:O(nlogn) 阅读详情

问题描述

小蓝现在有一个长度为  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;
    }
}

试题 A: 日期统计 循环和嵌套循环: 代码通过嵌套循环来遍历数组的子集合,这展示了如何在更复杂的场景中使用循环来处理问题。条件语句: 条件语句被用来跳过不符合特定条件的迭代,这是优化搜索和减少不必要计算的一个常见策略。查找和去重: 使用map数据结构来存储唯一的元素,并快速查找元素是否已经存在,这是一个常见的去重方法。数据验证isValid函数用来验证日期的有效性,体现了在添加数据前进行验证的重要性。算法思维。 阅读详情

相关推荐

x86架构学习之中断

外部中断,一般是由CPU的外部引脚电信号触发,这些引脚留给硬件厂商去定义中断,例如主板厂商可以将USB中断挂载70号中断引脚上,MCU厂商可以将片上外设(SPI、I2C等)的中断挂载在指定中断线上。中断描述符主要用于说明该中断的入口地址,中断描述符表则是将中断描述符一项一项管理在一个数组中,每一项中断描述符占用8个字节(64位模式下,占用16字节),其。简称中断,后文如果没特别说明,中断都指外部中断,由外部IO事件触发,由于时钟源来自CPU外部,与CPU时钟不同源,因此是异步事件。

qq_26962739的博客 1571

第十四届蓝桥杯省赛c/c++大学B组题解

第十四届蓝桥杯大赛软件赛省赛C/C++ 大学 B 组,日期统计、 01 串的熵、冶炼金属、飞机降落、接龙数列、岛屿个数、子串简写、整数删除、景区导游、砍树

weixin_52115456的博客 9477

知识检索中的四大评估指标:准确率、精确率、召回率与F1分数详解

摘要:NLP算法面试中,评估知识检索系统的核心指标包括准确率、精确率、召回率和F1分数。准确率衡量整体预测正确性,但在样本不均衡时可能失真;精确率关注预测正类中的真实比例(查准能力),召回率衡量真实正类被预测的比例(查全能力)。F1分数是两者的调和平均,提供综合评估。这些指标通过混淆矩阵计算,并存在制约关系:提高召回率往往降低精确率,反之亦然。应用场景包括文档检索(评估结果质量和覆盖度)和文本分类(如垃圾邮件过滤)。面试需掌握指标区别、适用场景及平衡方法(如调整阈值)。F1分数在样本不平衡时比准确率更具参考

Ven%的博客 1763

蓝桥杯真题演练:2023B组c/c++

if(mm==1||mm==3||mm==7||mm==8||mm==10||mm==12){//1,2,5,7,8,10,(腊)12三十一天不差,判断月份为这些时,日期是否在1~31,若果是则然会true。比如,对于S = 100 来说,信息熵 H(S ) = - 1/3 log2(1/3) - 2/3 log2(2/3) - 2/3 log2(2/3) = 1.3083。

valutang的博客 2807

Argoverse2数据集保姆级导入教程:从下载到预处理全流程解析

本文详细解析了Argoverse2数据集的完整导入流程,从环境配置、数据下载到预处理和高效加载策略。作为自动驾驶领域的标杆数据集,Argoverse2提供多模态传感器数据和高精地图信息,帮助研究者快速搭建数据处理流水线。文章包含实用代码示例和性能优化技巧,特别适合自动驾驶算法开发者参考。

weixin_29035405的博客 336

玩转 InternVL3.5 轻量级实战:从部署到优化的全记录

玩转 InternVL3.5 轻量级实战:从部署到优化的全记录

jacke121的专栏 626

2023年14届蓝桥杯省赛“日期统计”题解

这个子序列可以按照下标顺序组成一个 yyyymmdd 格式的日期,并且要求这个日期是 2023 年中的某一天的日期,例如 20230902,20231223。这一步的目的是为了减少后续的计算量,并且只保留在 1 到 12 范围内的合法月份。小蓝现在有一个长度为 100 的数组,数组中的每个元素的值都在 0 到 9 的范围之内。总之,这段代码的作用是根据前面的条件判断,判断某个两位数字是否代表一个合法的月份,若否则跳过本次循环,进入下一次循环。对于相同的日期你只需要统计一次即可。子序列的长度为 8;

EaSoNgo111的博客 5577

【DRAM存储器一】基本存储单元、阵列结构、读写原理

详述DRAM存储器存储单元、存储阵列结构和读写原理

highman110的博客 7256

蓝桥云客 日期统计

这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。小蓝现在有一个长度为100的数组,数组中的每个元素的值都在0到9的范围之内。请你帮小蓝计算下按上述条件一共能找到多少个不同的2023年的日期。对于相同的日期你只需要统计一次即可。通过枚举2023年的所有月份和所有日期,查看是否和这100个数组里面的是否存在一个就行。

zqystca的博客 502

PCL SVD分解求变换矩阵【2026最新版】

该算例使用奇异矩阵分解来求变换矩阵,输入的是同名点坐标输出的是变换矩阵。博客长期更新,本文最近一次更新时间为:2026年5月10日。

点云侠的博客 36万+

笔试题-2023-芯原-数字前端设计or验证【纯净题目版】

笔试题-2023-芯原-数字前端设计or验证【纯净题目版】

w0shishabi的博客 5685

第十四届蓝桥杯省赛B组c++——填空题1日期统计

小蓝现在有一个长度为 100100 的数组,数组中的每个元素的值都在 00 到 99 的范围之内。这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。的 20232023 年的日期。对于相同的日期你只需要统计一次即可。请你帮小蓝计算下按上述条件一共能找到多少个。

小赵起名困难户的博客 482

EMC中的RE测试与整改

测试主要测试电子、电气设备或系统在正常工作时自身对外界的辐射干扰强度,包括来自电路板、机箱、电缆及连接线等所有部件的辐射骚扰。分为:磁场辐射和。其中后者较为应用普遍。测试频段根据不同标准要求不一致。手机测试的频段主要为30-1000MHZ。需要注意的是设备在进行RE测试时要求尽可能满配置,满负荷的运行。同时RE也是EMC中的难点。

学海无涯的专栏 1670

第十四届蓝桥杯填空题:日期统计&& 01串熵

这道题,我们要求0出现了多少次,我们就枚举0的个数,找到符合要求的0的个数,输出即可。这道题我们选择暴力搜索,剪枝。

2301_81772249的博客 412

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

第十四届蓝桥杯真题

小蓝现在有一个长度为 100的数组,数组中的每个元素的值都在 0 到 9 的范围之内。请你帮小蓝计算下按上述条件一共能找到多少个的 2023 年的日期。对于相同的日期你只需要统计一次即可。

shijieshengda的博客 378

怀旧版电脑GBC模拟器

再现原版GBC掌机的界面,电脑运行连游戏界面都一样大小,很怀旧,很真实,(英文版)强烈推荐,很小的文件,很难才找到的。

2023年第十四届蓝桥杯C++B组复盘

这届蓝桥杯跟上届蓝桥杯一样,只有2个填空题,8个编程的大题。本届蓝桥杯我愿称之为。难度跟上届相比,没有那么多思维题,反倒板子题多了,不知道其他组是不是也是这样。

上山打老虎的博客 6万+

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

【备战蓝桥杯】第十四届蓝桥杯省赛C/C++ B组真题及题解

参加了两届蓝桥杯以及做过了往年的真题我的直观感受是蓝桥杯不再那么“暴力”了,而是逐渐趋向DP和搜素图论方面了。下面是第十四届蓝桥杯省赛C/C++ B组真题及题解,希望对阅读的你有所帮助。

Stephen_Curry___的博客 2万+

第十四届蓝桥杯大赛软件赛省赛

小蓝现在有一个长度为 100 的数组,数组中的每个元素的值都在 0 到 9 的范围之内。要求这个日期是 2023 年中的某一天的日期,例如 20230902,20231223。yyyy 表示年份,mm 表示月份,dd 表示天数,当月份或者天数的长度只有一位时需要一个前导零补充。请你帮小蓝计算下按上述条件一共能找到多少个不同的 2023 年的日期。对于相同的日期你只需要统计一次即可。本题的结果为一个整数,在提交答案时只输出这个整数,输出多余的内容将无法得分。

m0_68788727的博客 2200

第十四届蓝桥杯题解

分析:这道题直接暴力求解即可,八重for循环,注意剪枝,前四个for循环必须是2013,然后月数的第一位不能超过1,天数的第一位不能超过3,最后再细节地判断当月天数是否合理即可,分析:树上差分,今天先不写了。

AC__dream的博客 8949

第十四届蓝桥杯大赛软件赛省赛C/C++大学 B 组

真滴难啊

席万里的博客 3110

第十四届蓝桥杯省赛真题 Java 研究生 组【原卷】

# 发现宝藏 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。【[宝藏入口](https://www.captainbed.cn/dl)】。 ------------- 第十四届蓝桥杯大赛软件赛省赛 Java 研究生组

HHX_01的博客 3888

2023年第十四届蓝桥杯C/C++ B组省赛题解

2023年第十四届蓝桥杯C/C++ B组省赛个人题解,欢迎大家提意见!

m0_68856756的博客 4712

2023第十四届蓝桥杯大赛软件赛省赛C/C++ 大学 B 组(真题&题解)(C++/Java题解)

记录刷题的过程、感悟、题解。 希望能帮到,那些与我一同前行的,来自远方的朋友😉

2302_80067378的博客 1万+

<蓝桥杯软件赛>零基础备赛20周--第3周--填空题

蓝桥杯填空题全解析

罗勇军的博客 2万+

第十四届蓝桥杯 2023 C/C++组 日期统计

核心思路: 暴力优化+set去重 第一想法是暴力枚举,但是如果纯暴力枚举的话8个for循环嵌套还是很吓人的。由题找到的日期前四位都是2023,所以优化我们可以对前四位的每一位进行提前剪枝优化。再观察题目,题目特地把“不同”这两个字标黑,说明从前往后遍历可能存在相同的日期。为了达到相同的日期只统计一次,我们可以利用set容器去重

2301_80558092的博客 987

蓝桥杯日期类模板(超详解)

日期类问题可以说是蓝桥杯当中的常客了, 我整理了一下历年真题,归纳出了其中的模板。 希望对你有所帮助。

只想和你一起进步 4944
上一篇: Acwing第149场周赛(5562.自大生产Java版)
下一篇: 蓝桥杯国赛填空题(跑步计划)
雪泡泡
博客等级 码龄5年 350粉丝 248原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值