【蓝桥杯 第十届省赛Java B组】真题训练(A - H)H待更新
目录
A、组队 - 看图一眼出答案
B、不同子串 - 字符串模拟 + set去重
C、数列求值 - 模拟取余
D、数的分解 - 三重暴力
E、迷宫 - bfs 判断路径
F、特别数的和 - 弱智模拟
G、外卖店优先级 - map 暴力(90%通过率)
H、人物相关性分析 -
A、组队 - 看图一眼出答案
思路:
没啥说的,注意不能重复选择同一编号!
98+99+98+97+98=98*5=490
B、不同子串 - 字符串模拟 + set去重
import java.util.*;public class test {public static void main(String[] args){Scanner sc=new Scanner(System.in);String s="0100110001010001";int n=s.length();Set<String> st=new HashSet<>();for(int i=0;i<n;i++)for(int j=i+1;j<n+1;j++){String t=s.substring(i,j);st.add(t);}System.out.print(st.size());}
}
答案是100!
C、数列求值 - 模拟取余
思路:
最后算出来结果非常大,我们只需要每次取最后4位就好
答案是4659
public class test {static int N=20190324;public static void main(String[] args){Scanner sc=new Scanner(System.in);int[] d=new int[N];d[0]=1;d[1]=1;d[2]=1;for(int i=3;i<N;i++) d[i]=(d[i-1]+d[i-2]+d[i-3])%10000;System.out.print(d[N-1]);}
}
D、数的分解 - 三重暴力
思路:
3个各不相同的正整数,我们只需要i j k三重循环,并保证i<j<k,再字符串判断是否含2或4即可,答案是40785
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc=new Scanner(System.in);int res=0,target=2019;for(int i=1;i<target;i++)for(int j=i+1;j<target;j++)for (int k=j+1;k<target;k++){if(i+j+k==target&&ck(i)&&ck(j)&&ck(k)) res++;}System.out.println(res);}public static boolean ck(int x) {String s=String.valueOf(x);if(s.indexOf('2')!=-1||s.indexOf('4')!=-1) return false;return true;}
}
E、迷宫 - bfs 判断路径
【蓝桥杯集训11】BFS(4 / 4)_Roye_ack的博客-CSDN博客
思路:
DDDDRRURRRRRRDRRRRDDDLDDRDDDDDDDDDDDDRDRDRRURRUURRDDDDRDRRRRRURRRDRRDDDRRRRUURUUUUUUULULLUUUURRRRUULLLUUUULLUUULUURRURRURURRRDRDRRRRDRDRDDLLLDDRRDDRDDLDDDLLDDLLLDLDDDLDDRRRRRRRRRDDDDDDRR
迷宫问题用bfs解决,要求满足字典序最小的最短路,我们可以设置能走时优先选择顺序【D>L>R>U】,也就是在dx dy方向数组上按顺序定义
建立坐标系,x轴正方向向下,y轴正方向向右
首先倒着bfs预处理出d[i][j]——(i,j)到终点的最短距离
然后正向遍历能走的点,如果d[x][y]==d[nx][ny]+1,说明走这点是在最短路上,记录方向
因为我们优先是【D>L>R>U】这么走的,所以输出的最短路肯定是字典序最小的
为什么d[x][y]==d[nx][ny]+1说明是在最短路上?
因为bfs跑完,处理出的 值非-1的d[i][j] 都是能通往终点的最短路。d[i][j]代表(i,j)到终点的最短距离,如果d[x][y]==d[nx][ny]+1,说明(x,y)是最短路上(nx,ny)的前一个点,相当于说(x,y)在最短路上
import java.util.Arrays;
import java.util.LinkedList;
import java.util.Queue;
import java.util.Scanner;public class Main {static int n=30,m=50;static int[][] d=new int[n+1][m+1]; //d[i][j]是(i,j)到终点的最短距离static String[] g=new String[n+1]; //存储原始迷宫static int[] dx={1,0,0,-1}; // 方向优先D>L>R>Ustatic int[] dy={0,-1,1,0};static char[] dir={'D','L','R','U'};public static void main(String[] args) {Scanner sc=new Scanner(System.in);for(int i=0;i<n;i++) g[i]=sc.next();bfs();String res="";int x=0,y=0;while(x!=n-1||y!=m-1){for(int i=0;i<4;i++){int nx=dx[i]+x;int ny=dy[i]+y;if(nx>=0&&nx<n&&ny>=0&&ny<m&&g[nx].charAt(ny)=='0'){if(d[x][y]==d[nx][ny]+1){res+=dir[i]; //如果这条路能走且在最短路上 记录方向x=nx;y=ny;}}}}System.out.println("最短路径为:"+d[0][0]);System.out.println(res);}public static void bfs() {for(int i=0;i<n;i++) Arrays.fill(d[i],-1);d[n-1][m-1]=0;Queue<PII> q=new LinkedList<>();q.offer(new PII(n-1,m-1));while(!q.isEmpty()){PII t=q.poll();for(int i=0;i<4;i++){int nx=t.x+dx[i];int ny=t.y+dy[i];if(nx>=0&&nx<n&&ny>=0&&ny<m&&d[nx][ny]==-1&&g[nx].charAt(ny)=='0'){d[nx][ny]=d[t.x][t.y]+1;q.offer(new PII(nx,ny));}}}}
}class PII
{int x,y;PII(int x,int y){this.x=x;this.y=y;}
}
F、特别数的和 - 弱智模拟
import java.util.Arrays;
import java.util.LinkedList;
import java.util.Queue;
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc=new Scanner(System.in);int res=0;int n=sc.nextInt();for(int i=1;i<=n;i++)if(ck(i)) res+=i;System.out.println(res);}public static boolean ck(int x){String s=String.valueOf(x);if(s.indexOf('0')!=-1||s.indexOf('1')!=-1||s.indexOf('2')!=-1||s.indexOf('9')!=-1)return true;return false;}}
G、外卖店优先级 - map 暴力(90%通过率)
思路:
(碎碎念可以不看)这题折磨死我了,看一眼数据范围就知道双for会t,然后就想着找规律,但是找规律不行,第一次找的规律是:预处理记录每个id的时间点,2*时间点的个数=总共赚的优先级,然后再减去没有的时间点个数(因为如果没有订单优先级-1),最后判断大于3就说明在队列里
但这样写忽略了一种情况:id为2的时间点【5,6,6】如果按照上面规律,1,2,3,4属于没有出现的时间点,减去他们就是-4,然而实际上1,2,3,4时因为优先级为0,并不需要减去。
然后我就放弃思考了,写了个暴力……暴力写的完也是debug一年(因为循环时把t写成n了,为了这改了很久……)(碎碎念结束)
- 建一个map,【id:时间点列表】
- 然后遍历每一个id的从1—t的时间点
- 如果出现,则【优先级+=2×时间点出现次数】,这里运用排序+下标方法计算时间点出现次数
- 如果没有出现,则优先级-1,如果已经是0了就不变
- 最后判断一下状态,如果优先级>5则true,如果优先级<=3则false
- 如果状态为true,则res++
import java.util.*;public class Main {public static void main(String[] args) {Scanner sc=new Scanner(System.in);int res=0;int n=sc.nextInt(),m= sc.nextInt(), t= sc.nextInt();Map<Integer,List<Integer>> mp=new HashMap<>();int[] shopnum=new int[n+1];boolean[] st=new boolean[n+1];int[] h=new int[n+1];while(m-->0){int ts=sc.nextInt();int id=sc.nextInt();List<Integer> list=new ArrayList<>();if(shopnum[id]!=0) list=mp.get(id); //注意只有map中有list时才能直接赋值,否则需要新建list.add(ts);mp.put(id,list);shopnum[id]++;}int id=1;for(List<Integer> x:mp.values()){Collections.sort(x); //排序是为了后面计算一个时间点出现多次的情况for(int i=1;i<=t;i++){if(x.contains(i)) h[id]+=2*(x.lastIndexOf(i)-x.indexOf(i)+1); //eg:【1,1,1,3】 1的lastindex-indexof+1就是1的个数else if(!x.contains(i)) h[id]=Math.max(0,h[id]-1);if(h[id]>5) st[id]=true;else if(h[id]<=3) st[id]=false;}if (st[id]) res++;id++;}System.out.println(res);}
}
H、人物相关性分析 -
思路:
相关文章:

【蓝桥杯 第十届省赛Java B组】真题训练(A - H)H待更新
目录 A、组队 - 看图一眼出答案 B、不同子串 - 字符串模拟 set去重 C、数列求值 - 模拟取余 D、数的分解 - 三重暴力 E、迷宫 - bfs 判断路径 F、特别数的和 - 弱智模拟 G、外卖店优先级 - map 暴力(90%通过率) H、人物相关性分析 - A、组队 -…...
【牛客题】二进制求和 <模拟>
给定两个用字符串表示的二进制数,返回他们的和。 数据范围:字符串长度满足 1 ≤ n ≤ 1 0 5 10^5 105 ,字符串中只含有 0 和 1,且保证除 0 以外的二进制数没有前导零的情况。 示例输入: "101","1&qu…...
Error:Only idle or expired IP address can be disabled.
华为数通设备,在配置DHCP排除地址时可能会出现以下情况 Error:Only idle or expired IP address can be disabled. 这是因为地址已经被分配出去,所以现在无法进行排除 解决方法 1.先进入接口关闭DHCP [CE2-GigabitEthernet0/0/1]undo dhcp select g…...

Xubuntu16.04系统中create_ap开启5G网络的踩坑记录
Xubuntu16.04系统中安装create_ap创建无线AP: https://blog.csdn.net/qq_45445740/article/details/133972642?spm1001.2014.3001.5501 目录 1.create_ap.conf 配置文件解析2.关于信号强度和延时2.1 信号强度2.2 信号延时2.3 网络延时测试工具推荐——PingPlotter …...

8. 一文快速学懂常用工具——Linux命令(上)
本章讲解知识点 引言 指令学习 本专栏适合于软件开发刚入职的学生或人士,有一定的编程基础,帮助大家快速掌握工作中必会的工具和指令。本专栏针对面试题答案进行了优化,尽量做到好记、言简意赅。如专栏内容有错漏,欢迎在评论区指…...
@RestController注解说明
在Spring框架中,RestController注解是一个非常重要的注解,它用于将一个类标记为RESTful风格的控制器。本文将详细介绍RestController注解的作用和用法,并提供示例以帮助读者更好地理解和使用它。 RestController的作用 RestController注解是…...
Excel中行列范围的转换
将 行:1,4-5,8,11 列:a,c-e,f 这种写法转换成单元格地址的方法。 public static Tuple<List<int>, List<string>> ConvertRowColumn(string rowRep, string colRep){List<int> rowIdxs new List<int>();rowRep rowRep.…...

golang的类型断言
前言:原因很简单,写的代码panic了。报错如下。为此专门看下golang的类型断言。 “[PANIC]interface conversion: interface {} is string, not float64”。 1、类型断言(assertion) 所谓“类型断言”即判断一个变量是不是某个类型的实例(简单来讲就是判…...
监听dom变化,监听dom属性变化
一、利用new MutationObserver const config {attributes: true, // 监听属性变化childList: true, // 监听子节点变subtree: true // 监听后代元素变化};jianting new MutationObserver(() > {this.changeFun()});jianting.observe(dom, config) /监听 jianting.disconne…...

mfc140u.dll丢失怎么修复,mfc140u.dll文件有什么作用
今天我想和大家分享的是关于mfc140u.dll文件丢失的解决方法。在我们使用电脑的过程中,有时候会遇到一些错误提示,其中比较常见的就是“无法找到mfc140u.dll文件”。那么,这个文件是什么呢?它有什么作用呢? 首先&#…...
关于MySql update语句不能用子查询的解决办法
关于MySql update语句不能用子查询的解决办法 使用MySql数据库语法操作update时,第一时间想到的是一下写法: UPDATE purchase_request_detail SET convert_to_voucher_id2, convert_to_voucher_typeinventory-voucher WHERE detail_id IN (select deta…...
【WinForm】WinForm程序C#分屏显示
文章目录 前言1. 准备工作2. 步骤3 示例代码4. 结论 前言 在开发WinForm应用程序时,有时我们需要在另一个屏幕上显示与主界面内容相同的界面。本文将介绍如何使用C#克隆正在运行的界面,并在另一个屏幕上显示相同的内容。 1. 准备工作 在开始之前&…...

云安全—K8S API Server 未授权访问
0x00 前言 master节点的核心就是api服务,k8s通过REST API来进行控制,在k8s中的一切都可以抽象成api对象,通过api的调用来进行资源调整,分配和操作。 通常情况下k8s的默认api服务是开启在8080端口,如果此接口存在未授…...

nodejs+vue啄木鸟便民维修网站设计与实现-计算机毕业设计python-django-php
1、目的: 设计一个适用于便民家电维护的平台。该系统方便管理员对用户信息的管理,使用户在不掌握任何专业知识的前提下,可以方便快速的上手,因此项目应具有广泛使用人群。该课题应包括(至少包括)以下几个基…...

【数据结构】树形结构所有路径复原为链表
目录 1. 树形结构可视化 2. 树形结构转为链表 此目标是要还原树形结构的所有路径。树形结构是一种常见的数据结构,它表示元素之间层次关系。在树形结构中,每个节点可能拥有一个或多个子节点,形成了一个分层的结构。为了还原树形结构的路径&…...

linux杀毒软件下载、安装(在线安装、离线安装)
下载 ClamAVNet 离线安装 # 离线安装 rpm -ivh --prefix/usr/local/clamav clamav*linux.x86_64.rpm # 添加用户组和组成员 groupadd clamav useradd -g clamav clamav # 创建日志目录、病毒库目录和套接字目录 mkdir -p /usr/local/clamav/logs mkdir -p /usr/local/clamav/…...

系列五、映射文件xxxMapper.xml
一、概述 mapper映射文件是mybatis中最重要的部分,涉及到的细节也非常多。 1.1、parameterType 表示输入参数的类型。例如: <select id"getUserById" parameterType"integer" resultType"org.star.entity.model.UserDO&…...

【缓存】Spring全家桶中@CacheEvict无效情况共有以下几种
Spring全家桶中CacheEvict无效情况共有以下几种 一、背景介绍二、原因分析三、解决方案 一、背景介绍 SpringBoot中使用Cacheable注解缓存数据,使用CacheEvict注解删除缓存。但是在项目使用过程中,发现使用CacheEvict注解删除缓存无效。 拓展ÿ…...
P9117 [春季测试 2023] 涂色游戏
Portal. 维护每一行、每一列最后一次染色时染上的颜色以及时间戳即可。 时间复杂度 O ( T n ) O(Tn) O(Tn)。 #include <bits/stdc.h> using namespace std;const int maxn1e55; struct node{int c,t;}a[maxn],b[maxn];void solve() {int n,m,q;cin>>n>>…...
react如何进行项目配置代理
目录 一、前言 二、配置方法 三、总结 前言: 在使用React创建应用程序时,配置代理的目的是为了解决跨域请求的问题。跨域请求是指在浏览器中,一个站点的Web应用程序向另一个不同域名的站点发送请求。由于浏览器的安全策略,这些…...

SpringBoot-17-MyBatis动态SQL标签之常用标签
文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…...

Chapter03-Authentication vulnerabilities
文章目录 1. 身份验证简介1.1 What is authentication1.2 difference between authentication and authorization1.3 身份验证机制失效的原因1.4 身份验证机制失效的影响 2. 基于登录功能的漏洞2.1 密码爆破2.2 用户名枚举2.3 有缺陷的暴力破解防护2.3.1 如果用户登录尝试失败次…...
反向工程与模型迁移:打造未来商品详情API的可持续创新体系
在电商行业蓬勃发展的当下,商品详情API作为连接电商平台与开发者、商家及用户的关键纽带,其重要性日益凸显。传统商品详情API主要聚焦于商品基本信息(如名称、价格、库存等)的获取与展示,已难以满足市场对个性化、智能…...

阿里云ACP云计算备考笔记 (5)——弹性伸缩
目录 第一章 概述 第二章 弹性伸缩简介 1、弹性伸缩 2、垂直伸缩 3、优势 4、应用场景 ① 无规律的业务量波动 ② 有规律的业务量波动 ③ 无明显业务量波动 ④ 混合型业务 ⑤ 消息通知 ⑥ 生命周期挂钩 ⑦ 自定义方式 ⑧ 滚的升级 5、使用限制 第三章 主要定义 …...

大型活动交通拥堵治理的视觉算法应用
大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动(如演唱会、马拉松赛事、高考中考等)期间,城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例,暖城商圈曾因观众集中离场导致周边…...

《从零掌握MIPI CSI-2: 协议精解与FPGA摄像头开发实战》-- CSI-2 协议详细解析 (一)
CSI-2 协议详细解析 (一) 1. CSI-2层定义(CSI-2 Layer Definitions) 分层结构 :CSI-2协议分为6层: 物理层(PHY Layer) : 定义电气特性、时钟机制和传输介质(导线&#…...

【Redis技术进阶之路】「原理分析系列开篇」分析客户端和服务端网络诵信交互实现(服务端执行命令请求的过程 - 初始化服务器)
服务端执行命令请求的过程 【专栏简介】【技术大纲】【专栏目标】【目标人群】1. Redis爱好者与社区成员2. 后端开发和系统架构师3. 计算机专业的本科生及研究生 初始化服务器1. 初始化服务器状态结构初始化RedisServer变量 2. 加载相关系统配置和用户配置参数定制化配置参数案…...

抖音增长新引擎:品融电商,一站式全案代运营领跑者
抖音增长新引擎:品融电商,一站式全案代运营领跑者 在抖音这个日活超7亿的流量汪洋中,品牌如何破浪前行?自建团队成本高、效果难控;碎片化运营又难成合力——这正是许多企业面临的增长困局。品融电商以「抖音全案代运营…...

STM32标准库-DMA直接存储器存取
文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA(Direct Memory Access)直接存储器存取 DMA可以提供外设…...
今日科技热点速览
🔥 今日科技热点速览 🎮 任天堂Switch 2 正式发售 任天堂新一代游戏主机 Switch 2 今日正式上线发售,主打更强图形性能与沉浸式体验,支持多模态交互,受到全球玩家热捧 。 🤖 人工智能持续突破 DeepSeek-R1&…...