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

蓝桥杯刷题——day4

蓝桥杯刷题——day4

  • 题目一
    • 题干
    • 题目解析
    • 代码
  • 题目二
    • 题干
    • 题目解析
    • 代码

题目一

题干

小蓝和朋友们在玩一个报数游戏。由于今年是2024 年,他们决定要从小到大轮流报出是20或24倍数的正整数。前10个被报出的数是:20,24,40,48,60,72,80,96,100,120。请问第202420242024个被报出的数是多少?
这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只输出这个整数,填写多余的内容将无法得分。
题目链接:报数游戏

题目解析

这道题目其实很简单,我们最先的想法是设立一个计数器,然后一个一个的遍历,只要满足数字整除20或者整除24,那么计数器就+1,但是这个方法会耗费很长的时间,我们可以将20×24看作一个轮回,先计算20到24之间的能整除20或者整除24的个数times,然后用202420242024除以times得到商和余数,商则表示经过了几个轮回,而余数则表示是这个轮回的第几个数字,那么将两者相加,就表示了第202420242024个数是什么了,问题解决,下面是完整的代码:

代码

import java.util.ArrayList;
public class Main {public static void main(String[] args) {ArrayList<Long> list = new ArrayList<>();long times = 0;for (Long i = 1L; i <= 480; i++) {if (i % 20 == 0 || i % 24 == 0) {list.add(i);times++;}}Long a = 202420242024L;Long tmp1 = a / times;int tmp2 = (int) (a % times);System.out.println(list.get(tmp2 - 1) + 480L * tmp1);}
}

题目二

题干

给定一个数组,每次操作可以选择数组中任意两个相邻的元素x,y 并将其中的一个元素替换为gcd(x,y),其中gcd(x,y) 表示x 和y 的最大公约数。请问最少需要多少次操作才能让整个数组只含1。
输入:
输入的第一行包含一个整数n,表示数组长度。第二行包含n 个整数,相邻两个整数之间用一个空格分隔。
输出:
输出一行包含一个整数,表示最少操作次数。如果无论怎么操作都无法满足要求,输出-1。
示例一:

输入:
3
4 6 9
输出:
4

题目链接:最大公约数

题目解析

这道题目关键是如何找出一个最小子串,该最小子串能够实现数组中的最大公约数为 1,什么意思?如果我们把一个子串中的一个元素变为了1,那么我们就可以根据这个1把数组的其他元素都变成1,什么意思?我们下面的图:
在这里插入图片描述
5和4的最大公倍数是1,那么我们就可以把其中的一个数字变成1,那么其他的也可以根据这个1变成1,就像病毒扩散一样,因此我们只需要找到一个数组里的最短子串,并且该最短子串能够实现最大公倍数为1就能够完成,因此我们完整的思路是:

  1. 计算整个数组的 GCD。如果 GCD 不为 1,直接输出 -1。
  2. 寻找最短的子数组,其 GCD 为 1,记为长度L。
  3. 最小操作次数为:n−1+(L−1),因为:n−1是将所有元素通过邻近操作将本身变为1的次数。(L−1)是在将子数组( GCD 为 1)其中一个元素变为1的操作次数。

下面是完整代码:

代码

import java.util.Scanner;
public class Demo {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);//输入数组的长度int n = scanner.nextInt();//输入数组的内容int[] arr = new int[n];for (int i = 0; i < n; i++) {arr[i] = scanner.nextInt();}System.out.println(minOperations(n, arr));}private static int minOperations(int n, int[] arr) {//判断整体的GCDint overallGCD = gcdArray(arr);if (overallGCD != 1) {return -1;// 如果整体GCD不是1,无论怎么操作都无法满足需求}//寻找最短子数组,其GCD为1int minLength = Integer.MAX_VALUE;for (int i = 0; i < n; i++) {int currentGCD = arr[i];for (int j = i; j < n; j++) {currentGCD = gcd(currentGCD, arr[j]);if (currentGCD == 1) {minLength = Math.min(minLength, j - i + 1);}}}//如果没有找到任何子数组GCD为1if (minLength == Integer.MAX_VALUE) {return -1;}return (n - 1) + (minLength - 1);}private static int gcdArray(int[] arr) {int result = arr[0];for (int i = 1; i < arr.length; i++) {result = gcd(result,arr[i]);if (result == 0){return 1;}}return result;}private static int gcd(int a, int b) {//计算两个数的GCDwhile (b != 0) {int tmp = b;b = a % b;a = tmp;}return a;}
}

相关文章:

蓝桥杯刷题——day4

蓝桥杯刷题——day4 题目一题干题目解析代码 题目二题干题目解析代码 题目一 题干 小蓝和朋友们在玩一个报数游戏。由于今年是2024 年&#xff0c;他们决定要从小到大轮流报出是20或24倍数的正整数。前10个被报出的数是&#xff1a;20,24,40,48,60,72,80,96,100,120。请问第2…...

内网是如何访问到互联网(H3C源NAT)

H3C设备NAPT配置 直接打开29篇的拓扑&#xff0c;之前都配置好了 「模拟器、工具合集」复制整段内容 链接&#xff1a;https://docs.qq.com/sheet/DV0xxTmFDRFVoY1dQ?tab7ulgil 现在是出口路由器可以直接访问61.128.1.1&#xff0c;下面的终端访问不了&#xff0c;需要做NAPT源…...

源码分析之Openlayers中的Zoom缩放控件

概述 放大或缩小是地图中最基本的功能&#xff0c;本文主要介绍分析 Openlayers 中Zoom缩放控件的源码实现。 源码分析 Zoom控件继承Control类&#xff0c;关于Control类&#xff0c;可以参考这篇文章源码分析之Openlayers中的控件篇Control基类介绍 如果直接实例化Zoom类&…...

k8s的ConfigMap是什么, 为什么设计ConfigMap, 如何使用ConfigMap

ConfigMap简介, 为什么设计ConfigMap 在k8s中, ConfigMap是一种API对象, 用于将非机密的配置数据存储到键值对中。 Configmap作用是, 把配置数据从应用代码中分隔开, 让镜像和配置文件解耦&#xff0c;实现了镜像的可移植性。 举例&#xff1a; 我有一个Squid(正向代理)的Pod…...

fiddler设置抓取https,还抓取不到https如何解决?

一、清楚 C:\Users\Admin\AppData\Roaming\Microsoft\Crypto\RSA 目录下所有文件&#xff08;首次安装fiddler请忽略&#xff09; 二、清除电脑上的根证书&#xff0c;WINR快捷键&#xff0c;输入&#xff1a;certmgr.msc&#xff0c; 然后回车&#xff0c;查找所有fiddler证书…...

Python高性能web框架-FastApi教程:(1)创建一个简单的FastApi

&#xff08;1&#xff09;创建一个简单的FastApi 1. 导入必要的库 from fastapi import FastAPI import uvicornFastAPI 是一个用于构建现代、快速&#xff08;高性能&#xff09;的Web API的Python框架。uvicorn 是一个ASGI服务器&#xff0c;用于运行异步的Python Web应用…...

Django基础之模板

一.前言 前面我们讲了视图&#xff0c;我们今天来讲一下模板&#xff0c;模板其实也就是视图中render返回的html进行的渲染&#xff0c;然后展示到浏览器页面上去&#xff0c;那我们今天就来和大家来说一下模板的基本用法 二.寻找html模板 这个也就是我们前面说了的找html&a…...

RabbitMQ Work Queues (工作队列模式) 使用案例

Hi~&#xff01;这里是奋斗的明志&#xff0c;很荣幸您能阅读我的文章&#xff0c;诚请评论指点&#xff0c;欢迎欢迎 ~~ &#x1f331;&#x1f331;个人主页&#xff1a;奋斗的明志 &#x1f331;&#x1f331;所属专栏&#xff1a;RabbitMQ &#x1f4da;本系列文章为个人学…...

C#高级:Winform桌面开发中TreeView的基础例子

一、方案一&#xff1a;免递归使用树 namespace WinFormsApp1 {public partial class Form1 : Form{public Form1(){InitializeComponent();}/// <summary>/// 自定义树实体/// </summary>public class WinFormTree{/// <summary>/// 标签名称/// </summ…...

大模型的文件有哪些?

在大模型仓库&#xff08;如Hugging Face&#xff09;中&#xff0c;例如&#xff1a;https://modelscope.cn/models/ZhipuAI/glm-4-9b-chat/files&#xff0c;通常会发现以下几类文件&#xff1a; 模型权重文件&#xff1a;存储训练好的模型参数&#xff0c;是模型推理和微调…...

QT 国际化(翻译)

QT国际化&#xff08;Internationalization&#xff0c;简称I18N&#xff09;是指将一个软件应用程序的界面、文本、日期、数字等元素转化为不同的语言和文化习惯的过程。这使得软件能够在不同的国家和地区使用&#xff0c;并且可以根据用户的语言和地区提供本地化的使用体验。…...

C 进阶 — 指针的使用

C 进阶 — 指针的使用 主要内容 1、字符指针 2、数组指针 3、指针数组 4、数组传参和指针传参 5、函数指针 6、函数指针数组 7、指向函数指针数组的指针 8、 回调函数 9、指针和数组练习题 前节回顾 1、指针就是个变量&#xff0c;用来存放地址&#xff0c;地址唯一…...

【经验分享】容器云运维的知识点

最近忙于备考没关注&#xff0c;有次点进某小黄鱼发现首页出现了我的笔记还被人收费了 虽然我也卖了一些资源&#xff0c;但我以交流、交换为主&#xff0c;笔记都是免费给别人看的 由于当时刚刚接触写的并不成熟&#xff0c;为了避免更多人花没必要的钱&#xff0c;所以决定公…...

MFC学习笔记专栏开篇语

MFC&#xff0c;是一个英文简写&#xff0c;全称为 Microsoft Foundation Class Library&#xff0c;中文翻译为微软基础类库。它是微软开发的一套C类库&#xff0c;是面向对象的函数库。 微软开发它&#xff0c;是为了给程序员提供方便&#xff0c;减少程序员的工作量。如果没…...

电子科技大学《高级算法设计与分析》期末复习问题汇总(客观题-选择题、判断题)

电子科技大学《高级算法设计与分析》问题汇总_已知背包问题的动态规划算法时间复杂度为o(nw),其中n为物品数目,w为背包容量。请-CSDN博客 转载自上面这个链接&#xff0c;古希腊掌管成电专业课的神&#xff01;&#xff01;为了防止他的链接失效&#xff0c;自己也转存一份 &…...

GPTcelltype——scRNA-seq注释

#安装包 install.packages("openai") remotes::install_github("Winnie09/GPTCelltype") #填写API Sys.setenv(OPENAI_API_KEY your_openai_API_key) #加载包 #Load packages library(GPTCelltype) library(openai) #准备文件 #Assume you have already r…...

AI与大数据的深度结合:驱动决策的革命性力量

引言&#xff1a;数字时代的决策挑战 在这个信息爆炸的数字时代&#xff0c;数据早已渗透到我们生活的方方面面。全球每天产生的数据量呈指数级增长&#xff0c;无论是用户的消费行为、设备的运行状态&#xff0c;还是社会热点的实时动态&#xff0c;这些信息的规模和复杂性前所…...

Java多线程与线程池技术详解(九)

面对苦难的态度&#xff1a;《病隙碎笔》“不断的苦难才是不断地需要信心的原因&#xff0c;这是信心的原则&#xff0c;不可稍有更动。” 孤独与心灵的成长&#xff1a;《我与地坛》“孤独的心必是充盈的心&#xff0c;充盈得要流溢出来要冲涌出去&#xff0c;便渴望有人呼应他…...

【常考前端面试题总结】---2025

React fiber架构 1.为什么会出现 React fiber 架构? React 15 Stack Reconciler 是通过递归更新子组件 。由于递归执行&#xff0c;所以更新一旦开始&#xff0c;中途就无法中断。当层级很深时&#xff0c;递归更新时间超过了 16ms&#xff0c;用户交互就会卡顿。对于特别庞…...

什么是大语言模型(LLM)

1. 什么是大语言模型&#xff08;LLM&#xff09;&#xff1f; LLM 是一种基础模型&#xff08;Foundation Model&#xff09;的实例。 基础模型的特点&#xff1a; 使用大量未标注的自监督数据进行预训练。通过学习数据中的模式&#xff0c;生成具有普适性和可适应性的输出…...

Vue记事本应用实现教程

文章目录 1. 项目介绍2. 开发环境准备3. 设计应用界面4. 创建Vue实例和数据模型5. 实现记事本功能5.1 添加新记事项5.2 删除记事项5.3 清空所有记事 6. 添加样式7. 功能扩展&#xff1a;显示创建时间8. 功能扩展&#xff1a;记事项搜索9. 完整代码10. Vue知识点解析10.1 数据绑…...

Python:操作 Excel 折叠

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

java调用dll出现unsatisfiedLinkError以及JNA和JNI的区别

UnsatisfiedLinkError 在对接硬件设备中&#xff0c;我们会遇到使用 java 调用 dll文件 的情况&#xff0c;此时大概率出现UnsatisfiedLinkError链接错误&#xff0c;原因可能有如下几种 类名错误包名错误方法名参数错误使用 JNI 协议调用&#xff0c;结果 dll 未实现 JNI 协…...

AtCoder 第409​场初级竞赛 A~E题解

A Conflict 【题目链接】 原题链接&#xff1a;A - Conflict 【考点】 枚举 【题目大意】 找到是否有两人都想要的物品。 【解析】 遍历两端字符串&#xff0c;只有在同时为 o 时输出 Yes 并结束程序&#xff0c;否则输出 No。 【难度】 GESP三级 【代码参考】 #i…...

sqlserver 根据指定字符 解析拼接字符串

DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...

现代密码学 | 椭圆曲线密码学—附py代码

Elliptic Curve Cryptography 椭圆曲线密码学&#xff08;ECC&#xff09;是一种基于有限域上椭圆曲线数学特性的公钥加密技术。其核心原理涉及椭圆曲线的代数性质、离散对数问题以及有限域上的运算。 椭圆曲线密码学是多种数字签名算法的基础&#xff0c;例如椭圆曲线数字签…...

【Zephyr 系列 10】实战项目:打造一个蓝牙传感器终端 + 网关系统(完整架构与全栈实现)

🧠关键词:Zephyr、BLE、终端、网关、广播、连接、传感器、数据采集、低功耗、系统集成 📌目标读者:希望基于 Zephyr 构建 BLE 系统架构、实现终端与网关协作、具备产品交付能力的开发者 📊篇幅字数:约 5200 字 ✨ 项目总览 在物联网实际项目中,**“终端 + 网关”**是…...

鱼香ros docker配置镜像报错:https://registry-1.docker.io/v2/

使用鱼香ros一件安装docker时的https://registry-1.docker.io/v2/问题 一键安装指令 wget http://fishros.com/install -O fishros && . fishros出现问题&#xff1a;docker pull 失败 网络不同&#xff0c;需要使用镜像源 按照如下步骤操作 sudo vi /etc/docker/dae…...

在鸿蒙HarmonyOS 5中使用DevEco Studio实现录音机应用

1. 项目配置与权限设置 1.1 配置module.json5 {"module": {"requestPermissions": [{"name": "ohos.permission.MICROPHONE","reason": "录音需要麦克风权限"},{"name": "ohos.permission.WRITE…...

浅谈不同二分算法的查找情况

二分算法原理比较简单&#xff0c;但是实际的算法模板却有很多&#xff0c;这一切都源于二分查找问题中的复杂情况和二分算法的边界处理&#xff0c;以下是博主对一些二分算法查找的情况分析。 需要说明的是&#xff0c;以下二分算法都是基于有序序列为升序有序的情况&#xf…...