当前位置: 首页 > news >正文

第十三届蓝桥杯模拟赛第三期

A.填空题

问题描述

请问十六进制数 2021ABCD 对应的十进制是多少?

参考答案

539077581

import java.math.*;
public class Main {public static void main(String[] args) {String str=new BigInteger("2021ABCD",16).toString(10);System.out.println(str);}
}

B.填空题

问题描述

​ 如果一个整数 M 同时是整数 A 和 B 的倍数,则称 M 是 A 和 B 的公倍数,公倍数中最小的一个正整数称为最小公倍数。

例如:2021 和 86 的最小公倍数是 4042。

请问在 1(含) 到 2021(含) 中,有多少个数与 2021 的最小公倍数是 4042。

参考答案

3

public class Main {public static void main(String[] args) {int ans=0;for(int i=1;i<=2021;i++) {if(f(i,2021)==4042) {ans++;System.out.println(i);}}System.out.println(ans);}public static int gcd(int a,int b) {if(b==0)return a;return gcd(b,a%b);}public static int f(int x,int y) {return x*y/gcd(x,y);}
}

C.填空题

问题描述

​ 10 是一个非常特殊的数,它可以表示成两个非负整数的平方和,10 = 3 * 3 + 1 * 1。

​ 9 也是同样特殊的数,它可以表示成 9 = 3 * 3 + 0 * 0。

请问,在 1 到 2021 中有多少个这样的数?

请注意,有的数有多种表示方法,例如 25 = 5 * 5 + 0 * 0 = 3 * 3 + 4 * 4,在算答案时只算一次。

参考答案

624

public class Main {public static void main(String[] args) {int ans=0;for(int i=1;i<=2021;i++) {if(check(i)) {ans++;}}System.out.println(ans);}public static boolean check(int n) {for(int i=0;i<=99;i++) {for(int j=0;j<=99;j++) {if(i*i+j*j==n) {return true;}}}return false;}
}

D.填空题

问题描述

​ 下面是一个8个结点的无向图的邻接矩阵表示,其中第 i 行第 j 列表示结点 i 到结点 j 的边长度。当长度为 0 时表示不存在边。

0 9 3 0 0 0 0 9
9 0 8 1 4 0 0 0
3 8 0 9 0 0 0 0
0 1 9 0 3 0 0 5
0 4 0 3 0 7 0 6
0 0 0 0 7 0 5 2
0 0 0 0 0 5 0 4
9 0 0 5 6 2 4 0

请问,这个图的最小生成树大小的多少?

参考答案

E.填空题

问题描述

下面是一个20*20的矩阵,矩阵中的每个数字是一个1到9之间的数字,请注意显示时去除了分隔符号。

69859241839387868941
17615876963131759284
37347348326627483485
53671256556167864743
16121686927432329479
13547413349962773447
27979945929848824687
53776983346838791379
56493421365365717745
21924379293872611382
93919353216243561277
54296144763969257788
96233972513794732933
81443494533129939975
61171882988877593499
61216868895721348522
55485345959294726896
32124963318242554922
13593647191934272696
56436895944919899246

矩阵中一个子矩阵的值是指子矩阵中所有数值的和。

​请问,矩阵中值最大的一个 5 * 5 的子矩阵的值是多少?

参考答案

154

import java.util.*;
public class Main {public static void main(String[] args) {Scanner scan=new Scanner(System.in);int max=Integer.MIN_VALUE;int[][] a=new int[20][20];for(int i=0;i<20;i++) {String str=scan.next();for(int j=0;j<20;j++) {a[i][j]=str.charAt(j)-'0';}}for(int i=5;i<20;i++) {for(int j=5;j<20;j++) {int sum=0;for(int a1=i-5;a1<i;a1++) {for(int a2=j-5;a2<j;a2++) {sum+=a[a1][a2];}}if(sum>max) {max=sum;}}}System.out.println(max);}
}

F.编程题

问题描述

小蓝要写一个网页显示一些商品。

商品总共有 t 个,按顺序由 1 到 t 编号,每页显示 a 个,请问第 p 页显示的最小和最大编号是多少?

输入格式

输入一行包含三个整数 t、a、p,相邻整数之间用一个空格分隔。

输出格式

输出一行包含两个整数,分别表示最小和最大编号。

样例输入

31 10 3

样例输出

21 30

样例输入

31 10 4

样例输出

31 31

评测用例规模与约定

​ 对于所有评测用例,1 <= t <= 1000,1 <= a <= 100,1 <= p。保证第 p 页至少显示一个商品
 

import java.util.*;
public class Main {public static void main(String[] args) {Scanner scan=new Scanner(System.in);int t=scan.nextInt();int a=scan.nextInt();int p=scan.nextInt();int count=0;for(int i=1;i<=t;i=i+a) {count+=1;int j=i+a-1;if(count==p) {if(j<t) {System.out.println(i+" "+j);}if(j>=t) {System.out.println(i+" "+t);}}}}
}

G.编程题

问题描述

给定一个正整数 n,请判断 n 的所有数位上的值是否从左到右是严格递增的。

例如:1589 是严格递增的 。

再如:1336 不是严格递增的,中间有相同的 3。

再如:1598 不是严格递增的。

输入格式

输入一行包含一个正整数 n。

输出格式

如果是严格递增的,输出“YES”(全大写),否则输出“NO”(全大写)。

样例输入

1589

样例输出

YES

样例输入

1336

样例输出

NO

评测用例规模与约定

对于所有评测用例,1 <= n <= 1000000000。

import java.util.*;
public class Main {public static void main(String[] args) {Scanner scan=new Scanner(System.in);int n =scan.nextInt();int count=0;String str=String.valueOf(n);for(int i=1;i<str.length();i++) {if(str.charAt(i)<=str.charAt(i-1)) {count++;break;}}if(count>0) {System.out.println("NO");}else {System.out.println("YES");}}
}

H.编程题

问题描述

小蓝将自己的车停在路边,在同一天将车开走。给定停车时间和开走时间,请问小蓝停了多长时间?

输入格式

输入两行,第一行包含停车时间,第二行包含开走时间。

每个时间的格式为 HH:MM:SS,其中 HH 表示时,值为 0 到 23 的整数,如果小于 10 用 0 补齐两位;MM 和 SS 分别表示分和秒,值为 0 到 59 的整数,小于 10 时用 0 补齐两位。

输出格式

​ 输出总共停车的时间,格式为 HH:MM:SS。

样例输入

08:58:10
17:20:31

样例输出

08:22:21

import java.util.*;
public class Main {public static void main(String[] args) {Scanner scan=new Scanner(System.in);String str1=scan.next();String str2=scan.next();String[] a=new String[3];String[] b=new String[3];a=str1.split(":");b=str2.split(":");int hour=0;int min=0;int s=0;if(Integer.parseInt(b[2])>Integer.parseInt(a[2])) {s=Integer.parseInt(b[2])-Integer.parseInt(a[2]);}else {b[1]=Integer.parseInt(b[1])-1+"";s=Integer.parseInt(b[2])+60-Integer.parseInt(a[2]);}if(Integer.parseInt(b[1])>Integer.parseInt(a[1])) {min=Integer.parseInt(b[1])-Integer.parseInt(a[1]);}else{min=Integer.parseInt(b[1])+60-Integer.parseInt(a[1]);b[0]=Integer.parseInt(b[0])-1+"";}hour=Integer.parseInt(b[0])-Integer.parseInt(a[0]);System.out.printf("%02d"+":"+"%02d"+":"+"%02d",hour,min,s);}
}

I.编程题

问题描述

​ n 个运动员参加一个由 m 项运动组成的运动会,要求每个运动员参加每个项目。

​ 每个运动员在每个项目都有一个成绩,成绩越大排名越靠前。每个项目,不同运功员的成绩不会相同,因此排名不会相同。(但是不同项目可能成绩会相同)

​ 每个项目的前 k 名分别获得 k 到 1 分,第 i 名获得 max(k+1-i, 0) 分。

​ 每个运动员的总分就是他在每个项目上获得的分数之和。

​ 请计算每个运动员的总分。

输入格式

输入的第一行包含两个整数 n, m, k,用一个空格分隔。

接下来 n 行,每行包含 m 个整数,第 i 行第 j 个整数表示第 i 个运动员在第 j 项比赛的成绩。

输出格式

输出一行包含 n 个整数,依次表示每个运动员的总分,相邻的整数之间用一个空格分隔。

样例输入

3 5 2
5 3 1 5 12
2 4 2 34 1
8 6 3 2 2

样例输出

4 4 7

样例说明

​ 第 1 个运动员得分为:1+0+0+1+2=4
​ 第 2 个运动员得分为:0+1+1+2+0=4
​ 第 3 个运动员得分为:2+2+2+0+1=7

评测用例规模与约定

​ 对于 50% 的评测用例,2 <= n, m, k <= 20,0 <= 成绩 <= 1000。
​ 对于所有评测用例,2 <= n, m, k <= 100,0 <= 成绩 <= 10000。
 

import java.util.*;
public class Main {static int k=0;public static void main(String[] args) {Scanner scan=new Scanner(System.in);int n=scan.nextInt();int m=scan.nextInt();k=scan.nextInt();int num=1;int max=Integer.MIN_VALUE;int[][] a=new int[n][m];//n位运动员m项成绩int[] b=new int[n];//这n位运动员第m项成绩int[] sum=new int[n];//总成绩for(int i=0;i<n;i++) {for(int j=0;j<m;j++) {a[i][j]=scan.nextInt();}}for(int i=0;i<m;i++) {for(int j=0;j<n;j++) {b[j]=a[j][i];}A:while(true) {for(int k=0;k<b.length;k++) {if(b[k]>max) {max=b[k];}}for(int s=0;s<b.length;s++) {if(max==0) {num=1;break A;}if(max==b[s]) {sum[s]+=get(num);num++;max=0;b[s]=0;continue A;}}}}for(int i=0;i<sum.length;i++) {System.out.printf(sum[i]+" ");}}public static int get(int i) {return Math.max(k+1-i, 0);}
}import java.util.*;
public class Main {static int k=0;public static void main(String[] args) {Scanner scan=new Scanner(System.in);int n=scan.nextInt();int m=scan.nextInt();k=scan.nextInt();int num=1;int max=Integer.MIN_VALUE;int[][] a=new int[n][m];//n位运动员m项成绩int[] b=new int[n];//这n位运动员第m项成绩int[] sum=new int[n];//总成绩for(int i=0;i<n;i++) {for(int j=0;j<m;j++) {a[i][j]=scan.nextInt();}}for(int i=0;i<m;i++) {for(int j=0;j<n;j++) {b[j]=a[j][i];}A:while(true) {for(int k=0;k<b.length;k++) {if(b[k]>max) {max=b[k];}}for(int s=0;s<b.length;s++) {if(max==0) {num=1;break A;}if(max==b[s]) {sum[s]+=get(num);num++;max=0;b[s]=0;continue A;}}}}for(int i=0;i<sum.length;i++) {System.out.printf(sum[i]+" ");}}public static int get(int i) {return Math.max(k+1-i, 0);}
}

J.编程题

问题描述

​ 给定 n 个整数 a[1], a[2], …, a[n],小蓝希望在中间选出一部分,满足以下两个条件:

​ 1、对于某个下标集合 S,选出的数中有至少 k 个下标在集合 S 中;

​ 2、选出的数按照原来的顺序排列,是严格单调上升的,即选出的是一个上升子序列。

​ 请问小蓝最多能选出多少个数。

输入格式

​ 输入的第一行包含两个整数 n, k,用一个空格分隔。

​ 第二行包含 n 个整数 a[1], a[2], …, a[n],相邻的整数间用空格分隔。

​ 第三行包含一个长度为 n 的01串,依次表示每个下标是否在集合 S 中,为 0 表示不在 S 中,为 1 表示在 S 中。

输出格式

​ 输出一行包含一个整数,表示答案。如果没有满足条件的选法,输出-1。

样例输入

8 2
8 1 2 3 9 4 7 10
10001010

样例输出

3

样例说明

由于 8、9、7 三个数中至少要选 2 个,只能选 8 和 9,剩下的数只能选最后一个数 10。

样例输入

8 3
8 1 2 3 9 4 7 10
10001010

样例输出

-1

评测用例规模与约定

​ 对于 30% 的评测用例,2 <= n <= 100,0 <= a[i] <= 100, 0 <= k <= 3。
​ 对于所有评测用例,2 <= n <= 1000,0 <= a[i] <= 100000, 0 <= k <= 20。
 

相关文章:

第十三届蓝桥杯模拟赛第三期

A.填空题 问题描述 请问十六进制数 2021ABCD 对应的十进制是多少&#xff1f; 参考答案 539077581 import java.math.*; public class Main {public static void main(String[] args) {String strnew BigInteger("2021ABCD",16).toString(10);System.out.printl…...

代碼隨想錄算法訓練營|第四十四天|01背包问题 二维、01背包问题 一维、416. 分割等和子集。刷题心得(c++)

目录 01背包問題 - DP二維數組 01 背包問題描述 暴力解 動態規劃 確認DP數組以及下標的含意 確定遞推公式 01背包问题 一维 一维DP 数組(滾動数組) 動態規劃五部曲 定義DP数組以及其下標含意 遞推公式 初始化 遍歷順序 讀題 416. 分割等和子集 自己看到题目的第…...

【算法训练-回溯算法 零】回溯算法解题框架

抽象地说&#xff0c;解决一个回溯问题&#xff0c;实际上就是遍历一棵决策树的过程&#xff0c;树的每个叶子节点存放着一个合法答案。你把整棵树遍历一遍&#xff0c;把叶子节点上的答案都收集起来&#xff0c;就能得到所有的合法答案。站在回溯树的一个节点上&#xff0c;你…...

GAN.py

原代码地址&#xff1a;github.com/zqhang/MTGFLOW 目录 def ConvEncoder() def ConvDecoder() class CNNAE(torch.nn.Module): class R_Net(torch.nn.Module): class D_Net(torch.nn.Module): def R_Loss&#xff08;&#xff09; def D_Loss&#xff08;&#xff09…...

C语言动态内存管理

1.为什么要动态内存分配&#xff1f; int val 20; int a[10]{0};上面我们声明并定义了一个大小为4字节的整型变量&#xff0c;一个容量为10*4字节的整型数组。 开辟方式:我们在栈上开辟。 开辟空间的方式有两个特点&#xff1a; 1. 空间开辟 大小是固定 的。 2. 数组在申明…...

小红书商品详情API接口(商品详情页面数据接口)

小红书商品详情API接口&#xff08;商品详情页面数据接口 小红书商品详情API接口&#xff08;商品详情页面数据接口&#xff09;代码对接如下&#xff1a; 1.公共参数 名称类型必须描述keystring是get请求方式拼接在url中,点击获取api_namestring是 api接口名称cachestrin…...

nginx配置文件的内容解释和简化方案

文章目录 配置文件内容理解配置文件精简nginx.confapp1.conf 配置文件内容理解 events {worker_connections 1024; }http {include mime.types;default_type application/octet-stream;sendfile on;keepalive_timeout 65;client_max_body_size 50m;client…...

Java设计模式之访问者模式(Visitor Pattern)

访问者模式&#xff08;Visitor Pattern&#xff09;是一种行为型设计模式&#xff0c;它允许在不修改现有对象结构的情况下定义新的操作。该模式将操作封装在一个访问者对象中&#xff0c;使得可以在不改变被访问对象的类的前提下&#xff0c;通过访问者对象对被访问对象进行新…...

others-AppLovin广告接入

title: others-AppLovin广告接入 categories: Others tags: [广告, AppLovin] date: 2023-10-20 10:07:01 comments: false mathjax: true toc: true others-AppLovin广告接入 前篇 官方 - https://www.applovin.com/ Android sdk - https://github.com/AppLovin/AppLovin-MAX…...

ESP32集成开发环境Espressif-IDE安装 – Windows

陈拓 2023/10/15-2023/10/16 1. 概述 Espressif IDE是一个基于Eclipse CDT的集成开发环境&#xff08;IDE&#xff09;&#xff0c;用于使用ESP-IDF框架开发物联网应用程序。这是一个专门为ESP-IDF构建的独立定制IDE。Espressif IDE附带了IDF Eclipse插件、重要的Eclipse CDT插…...

python之if else语句介绍

python之if else语句介绍 在Python中&#xff0c;if和else是两种重要的控制流语句&#xff0c;它们用于根据特定的条件来执行不同的代码块。以下是它们的用法和详细介绍&#xff1a; 1&#xff09;if语句 if语句用于在满足某种条件时执行特定的代码块。它的基本语法如下&#…...

Java版ORM最初雏形

经过一个晚上的加班&#xff0c;终于把ORM初步结构工程搭好了。工程依赖有点难用&#xff0c;编辑器提示比VS差很多。 首先LIS.Core创建一个最初的容器雏形&#xff0c;先能反射得到对象给ORM获得数据库驱动 然后ORM创建数据库驱动差异接口&#xff0c;不同数据库实现接口后配…...

黎曼几何与切空间之间的投影

公式&#xff1a; 从黎曼空间投影到切空间&#xff0c;其中P为黎曼均值&#xff0c;也是切空间的参考中心点&#xff0c;Pi是要投影到切空间的点。 从切空间投影回来&#xff0c;其中Si为切空间中的向量。 function Tcov CovToTan(cov,Mcov)Cm12 Mcov^(-1/2);X_new logm(Cm…...

【Tomcat】为Tomcat服务配置本地Apr库以提升性能

关于 apr 和 apr-util 对 Tomcat 服务的性能提升的说明&#xff1a; 要测APR给tomcat带来的好处最好的方法是在慢速网络上&#xff08;模拟Internet&#xff09;&#xff0c;将Tomcat线程数开到300以上的水平&#xff0c;然后模拟一大堆并发请求。如果不配APR&#xff0c;基本…...

普通人在当前大环境下——少看宏观,多看具体

前言 宏观叙事,简而言之,就是从宏观把握历史社会的发展,寻找其中永恒的共性。我们大概听过此类的话:贸易战导致本地经济下滑、气候变化是因为过去几十年的工业发展、大环境不行导致不赚钱。此类叙事方式,身边人聊的甚欢,在媒体、社交圈、日常社群交流中,随处可见。以前…...

用echarts在vue2中实现3d饼图

先看效果&#xff0c;再看文章&#xff1a; 一、安装插件 3d的图不仅用到echarts&#xff0c;还用到了echarts-gl&#xff0c;因此都需要安装一下哦~ npm install echarts npm install echarts-gl2.0.9 //可以指定版本&#xff0c;也可不指定二、在main.js中引入 import * …...

低代码助力软件开发

低代码开发工具正在日益变得强大&#xff0c;它正不断弥合着前后端开发之间的差距。对于后端来说&#xff0c;基于低代码平台开发应用时&#xff0c;完全不用担心前端的打包、部署等问题&#xff0c;也不用学习各种框架&#xff08;Vue、React、Angular等等&#xff09;&#x…...

C嘎嘎之类和对象上

> 作者简介&#xff1a;დ旧言~&#xff0c;目前大二&#xff0c;现在学习Java&#xff0c;c&#xff0c;c&#xff0c;Python等 > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;掌握类的引用和定义&#xff0c;熟悉类成员函数的…...

Vue 3使用 Iconify 作为图标库与图标离线加载的方法、 Icones 开源在线图标浏览库的使用

之前一直naive-ui搭配使用的是xicons&#xff0c;后来发现Iconify支持的图标合集更多&#xff0c;因此转而使用Iconify。 与FontAwesome不同的是&#xff0c;Iconify配合Icones相当于是一个合集&#xff0c;Iconify提供了快捷引入图标的方式&#xff0c;而Icones是一个大的图标…...

springboot+vue基于Spark的共享单车数据存储系统的设计与实现【内含源码+文档+部署教程】

博主介绍&#xff1a;✌全网粉丝10W,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业毕业设计项目实战6年之久&#xff0c;选择我们就是选择放心、选择安心毕业✌ &#x1f345;由于篇幅限制&#xff0c;想要获取完整文章或者源码&#xff0c;或者代做&am…...

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 如果用户登录尝试失败次…...

docker详细操作--未完待续

docker介绍 docker官网: Docker&#xff1a;加速容器应用程序开发 harbor官网&#xff1a;Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台&#xff0c;用于将应用程序及其依赖项&#xff08;如库、运行时环…...

VB.net复制Ntag213卡写入UID

本示例使用的发卡器&#xff1a;https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...

Python:操作 Excel 折叠

💖亲爱的技术爱好者们,热烈欢迎来到 Kant2048 的博客!我是 Thomas Kant,很开心能在CSDN上与你们相遇~💖 本博客的精华专栏: 【自动化测试】 【测试经验】 【人工智能】 【Python】 Python 操作 Excel 系列 读取单元格数据按行写入设置行高和列宽自动调整行高和列宽水平…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例

使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件&#xff0c;常用于在两个集合之间进行数据转移&#xff0c;如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model&#xff1a;绑定右侧列表的值&…...

iPhone密码忘记了办?iPhoneUnlocker,iPhone解锁工具Aiseesoft iPhone Unlocker 高级注册版​分享

平时用 iPhone 的时候&#xff0c;难免会碰到解锁的麻烦事。比如密码忘了、人脸识别 / 指纹识别突然不灵&#xff0c;或者买了二手 iPhone 却被原来的 iCloud 账号锁住&#xff0c;这时候就需要靠谱的解锁工具来帮忙了。Aiseesoft iPhone Unlocker 就是专门解决这些问题的软件&…...

Linux简单的操作

ls ls 查看当前目录 ll 查看详细内容 ls -a 查看所有的内容 ls --help 查看方法文档 pwd pwd 查看当前路径 cd cd 转路径 cd .. 转上一级路径 cd 名 转换路径 …...

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility

Cilium动手实验室: 精通之旅---20.Isovalent Enterprise for Cilium: Zero Trust Visibility 1. 实验室环境1.1 实验室环境1.2 小测试 2. The Endor System2.1 部署应用2.2 检查现有策略 3. Cilium 策略实体3.1 创建 allow-all 网络策略3.2 在 Hubble CLI 中验证网络策略源3.3 …...

Axios请求超时重发机制

Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式&#xff1a; 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)

在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...