蓝桥杯考前复习三
1.约数个数
由乘法原理可以得出:

import java.util.*;
public class Main{static int mod = (int)1e9 + 7;public static void main(String[] args){Map<Integer,Integer> map = new HashMap<>(); //创建一个哈希表Scanner scan = new Scanner(System.in);int n = scan.nextInt();while(n -- > 0){int x = scan.nextInt();//下面这里是运用了分解质因数的模板,for(int i = 2 ; i <= x / i ; i ++ ){while(x % i == 0){x /= i;// map.getOrDefault(i,0) 这个是获取对应i位置的values值map.put(i,map.getOrDefault(i,0) + 1); }}if(x > 1) map.put(x,map.getOrDefault(x,0) + 1 );}long res = 1;//map.keySet()获取所有的key值,map.values()获取所有的values值,两种方法都可以for(int key : map.values()){res = res * (key + 1) % mod;}System.out.println(res);}
}
2.堆优化版的Dijkstra
正好复习一下优先队列和存图方式;
3.贡献法求因数个数和;
题目来源于华北水利水电大学校赛:
7-10 兔丁兴旺的兔子家族 - 2024年第六届华北水利水电大学校赛-正式赛-复盘 (pintia.cn)
import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc=new Scanner(System.in);int n=sc.nextInt();long sum=0;for(int i=1;i<=n;i++) {sum+=n/i;}System.out.println(sum);}
}
4.BFS--青蛙跳杯子
开心开心,一次就ac了,嘿嘿;
11.青蛙跳杯子 - 蓝桥云课 (lanqiao.cn)
import java.util.HashMap;
import java.util.LinkedList;
import java.util.Queue;
import java.util.Scanner;public class Main {static String start, end;static int[] dx = {-3,-2,-1,1,2,3 };static int n;public static void main(String[] args) {Scanner sc = new Scanner(System.in);start = sc.next();end = sc.next();n = start.length();bfs();}public static void bfs() {Queue<String>q=new LinkedList<String>();q.offer(start);HashMap<String, Integer>map=new HashMap<String, Integer>();map.put(start, 0);while(!q.isEmpty()) {String t=q.poll();if(t.equals(end)) {System.out.println(map.get(t));}int index=t.indexOf('*');for(int i=0;i<6;i++) {int x=index+dx[i];if(x<0||x>=n)continue;char[] T = t.toCharArray();char tmp=T[x];T[x]=T[index];T[index]=tmp;String str=new String(T);if(!map.containsKey(str)) {map.put(str, map.get(t)+1);}else continue;q.offer(str);}}}}
5.进制转换
1.Excel地址 - 蓝桥云课 (lanqiao.cn)
2.幸运数字 - 蓝桥云课 (lanqiao.cn)
import java.util.Scanner;public class Excel地址 {public static void main(String[] args) {Scanner sc=new Scanner(System.in);int n=sc.nextInt();int []a=new int[26];int i=0;while(n!=0) {n--;a[i++]=n%26;n/=26;}for(int j=i-1;j>=0;j--) {System.out.print((char)(a[j]+65));}}}
6.二分答案---
5562. 最大生产 - AcWing题库
import java.util.ArrayList;
import java.util.Scanner;public class Main {static int N = 100010;static long[] a = new long[N];static long[] b = new long[N];static int n;static int k;static int INF = Integer.MAX_VALUE;public static void main(String[] args) {Scanner sc = new Scanner(System.in);n = sc.nextInt();k = sc.nextInt();for (int i = 1; i <= n; i++) {a[i] = sc.nextLong();}for (int i = 1; i <= n; i++) {b[i] = sc.nextLong();}long l = 0, r =(int)2e9;while (l < r) {long mid = (l + r + 1) / 2;if (check(mid)) {l = mid;} elser = mid - 1;}System.out.println(l); // 二分逻辑}public static boolean check(long x) {long m=k;for (int i = 1; i <= n; i++) {if (b[i] - x * a[i] < 0) {m-=(a[i]*x-b[i]);if(m<0)return false;}}return true;}}
7.FloodFill
5565. 残垣断壁 - AcWing题库
import java.util.Scanner;public class Main {static int n,m;static int N=110;static int[][]g=new int[N][N];static boolean[][]st=new boolean[N][N];static int res=0;static int[] dx = { -1, 0, 1, 0 };static int[] dy = { 0, 1, 0, -1 };public static void main(String[] args) {Scanner sc=new Scanner(System.in);n=sc.nextInt();m=sc.nextInt();for(int i=0;i<n;i++) {String str = sc.next();for(int j=0;j<m;j++) {g[i][j]=str.charAt(j);}}for(int i=0;i<n;i++) {for(int j=0;j<m;j++) {if(g[i][j]=='B'&&!st[i][j]) {res++;dfs(i,j);}}}System.out.println(res);}public static void dfs(int a,int b) {st[a][b]=true;for(int i=0;i<4;i++) {int x=a+dx[i];int y=b+dy[i];if(x<0||x>=n||y<0||y>=m||st[x][y]||g[x][y]=='.')continue;dfs(x,y);}}}
相关文章:
蓝桥杯考前复习三
1.约数个数 由乘法原理可以得出: import java.util.*; public class Main{static int mod (int)1e9 7;public static void main(String[] args){Map<Integer,Integer> map new HashMap<>(); //创建一个哈希表Scanner scan new Scanner(System.in);i…...
极客时间: 用 Word2Vec, LangChain, Gemma 模拟全本地检索增强生成(RAG)
每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…...
VBA操作Word
检查word中的字体情况 Sub ListAllFontsInDocument()Dim doc As DocumentDim rng As RangeDim char As RangeDim fontName As StringDim uniqueFonts As Collection 初始化集合用于存储唯一字体名称Set uniqueFonts New Collection 获取当前活动文档Set doc ActiveDocument …...
Linux文件IO(4):目录操作和文件属性获取
目录 1. 前言 2. 函数介绍 2.1 访问目录 – opendir 2.2 访问目录 – readdir 2.3 访问目录 – closedir 2.4 修改文件访问权限 – chmod/fchmod 2.5 获取文件属性 – stat/lstat/fstat 2.5.1 文件属性 – struct stat 2.6 文件类型 – st_mode 3. 代码练习 3.1 要求 3.2 代…...
【C语言】_文件类型,结束判定与文件缓冲区
目录 1. 文本文件和二进制文件 2. 文件读取结束的判定 3. 文件缓冲区 1. 文本文件和二进制文件 根据数据的组织形式,数据文件被称为文本文件或二进制文件; 数据在内存中以二进制的形式存储,如果不加转换地输出到外存,就是二进…...
YOLOV8注意力改进方法:DoubleAttention(附代码)
原论文地址:原论文地址 DoubleAttention网络结构的优点在于,它能够有效地捕获图像中不同位置和不同特征的重要性,从而提高了图像识别和分割的性能。 论文相关内容介绍: 论文摘要:学习捕捉远程关系是图像/视频识别的…...
每日一题 --- 前 K 个高频元素[力扣][Go]
前 K 个高频元素 题目:347. 前 K 个高频元素 给你一个整数数组 nums 和一个整数 k ,请你返回其中出现频率前 k 高的元素。你可以按 任意顺序 返回答案。 示例 1: 输入: nums [1,1,1,2,2,3], k 2 输出: [1,2]示例 2: 输入: nums [1], k 1 输出: …...
Rust所有权和Move关键字使用和含义讲解,以及Arc和Mutex使用
Rust 所有权规则 一个值只能被一个变量所拥有,这个变量被称为所有者。 一个值同一时刻只能有一个所有者,也就是说不能有两个变量拥有相同的值。所以对应变量赋值、参数传递、函数返回等行为,旧的所有者会把值的所有权转移给新的所有者&#…...
【YOLOV5 入门】——构建自己的数据集模型训练模型检验
一、准备工作 1、数据收集 图片类型数据不用多说;视频类型数据利用opencv进行抽帧保存为一张张图片,这里选取30s的名侦探柯南片段进行试验,确保环境解释器下安装了opencv(我使用的是另一个虚拟环境): im…...
MacBook 访达使用技巧【mac 入门】
快捷键 打开访达搜索窗口默认快捷键【⌥ ⌘ 空格键】可以在键盘【系统偏好设置 -> 键盘->快捷键->聚焦】修改 但是我不会去修改它,因为我不常用访达的搜索窗口,更多的是想快速打开访达文件夹窗口,可以通过第三方软件定义访达的快…...
常见溯源,反溯源,判断蜜罐手段
常见溯源,反溯源,判断蜜罐手段 1.溯源手段2.反溯源手段3.如何判断蜜罐🍯4.案例:MySQL读文件蜜罐 1.溯源手段 IP地址追踪:通过IP地址追踪可以确定攻击者的地理位置和ISP信息等;通过攻击IP历史解析记录/域名…...
蓝桥杯刷题-09-三国游戏-贪心⭐⭐⭐
蓝桥杯2023年第十四届省赛真题-三国游戏 小蓝正在玩一款游戏。游戏中魏蜀吴三个国家各自拥有一定数量的士兵X, Y, Z (一开始可以认为都为 0 )。游戏有 n 个可能会发生的事件,每个事件之间相互独立且最多只会发生一次,当第 i 个事件发生时会分别让 X, Y,…...
Windows编译运行TensorRT-YOLOv9 (C++)
Windows编译运行yolov9-bytetrack-tensorrt(C) 1 基础环境2 编译yolov9-bytetrack-tensorrt(1)下载yolov9-bytetrack-tensorrt源码(2)修改CMakeLists.txt(3)CMake编译 3 yolov9模型转…...
.NET 设计模式—简单工厂(Simple Factory Pattern)
简介 简单工厂模式(Simple Factory Pattern)属于类的创建型模式,又叫静态工厂方法模式(Static FactoryMethod Pattern),是通过一个工厂类来创建对象,根据不同的参数或条件返回相应的对象实例。这种模式隐藏…...
聊聊Linux内核中内存模型
介绍 在Linux中二进制的程序从磁盘加载到内存,运行起来后用户态是使用pid来唯一标识进程,对于内核都是以task_struct表示。二进制程序中的数据段、代码段、堆都能提现在task_struct中。每一个进程都有自己的虚拟地址空间,虚拟地址空间包含几…...
docker自动化部署示例
前提 安装docker 、 docker-cpmpose、git、打包环境(如meaven、jdk、node等) 原理 git Dockerfile docker-compose 获取源码(代码仓库)获取可运行程序的镜像(docker)将打包后的程序放入镜像内…...
Redis精品案例解析:Redis实现持久化主要有两种方式
Redis实现持久化主要有两种方式:RDB(Redis DataBase)和AOF(Append Only File)。这两种方式各有优缺点,适用于不同的使用场景。 1. RDB持久化 RDB持久化是通过创建一个二进制的dump文件来保存当前Redis数据…...
Python | Leetcode Python题解之第14题最长公共前缀
题目: 题解: class Solution:def longestCommonPrefix(self, strs: List[str]) -> str:def isCommonPrefix(length):str0, count strs[0][:length], len(strs)return all(strs[i][:length] str0 for i in range(1, count))if not strs:return &quo…...
烧坏两块单片机,不知道原因?
没有看你的原理图,以下是造成烧毁芯片的几个环节: 1. 最大的可能性是你的单片机电机控制输出与电机驱动电路没有隔离。 我的经验,使用STM32控制电机,无论是直流电机脉宽调制,还是步进电机控制,控制电路与…...
SV学习笔记(八)
文章目录 SV入门练习基本数据类型字符串类型数组类型接口的定义与例化类的封装类的继承package的使用随机约束线程的同步线程的控制虚方法方法(任务与函数)SV用于设计 参考资料 SV入门练习 基本数据类型 有符号无符号、四状态双状态、枚举类型、结构体…...
基于CircuitPython与RP2040打造可编程USB脚踏开关:从硬件到软件的完整指南
1. 项目概述:为什么你需要一个可编程的脚踏开关? 在剪辑视频、处理音频、写代码或者玩游戏的时候,你的双手是不是永远不够用?频繁地在键盘、鼠标、调音台或者剪辑软件的面板之间切换,不仅效率低下,还容易打…...
巧用Charles代理,根治Xposed资源库HTTPS迁移引发的下载难题
1. 当Xposed遇上HTTPS:一场协议升级引发的"断粮危机" 去年给家里老人用的那台小米4刷机时,突然发现Xposed框架死活下载不了资源包。屏幕上赫然显示着那个熟悉的错误提示:"Xposed Installer:下载http://dl.xposed.info/repo/fu…...
Perplexity学校信息检索的“黑箱”终于被打开:基于37所样本校实测的响应延迟、召回率与可信度三维评估报告
更多请点击: https://codechina.net 第一章:Perplexity学校信息检索的“黑箱”终于被打开:基于37所样本校实测的响应延迟、召回率与可信度三维评估报告 实测方法论:三维度穿透式评估框架 我们对全国37所高校(含985/2…...
Visual C++运行库合集:解决Windows程序依赖的终极方案
Visual C运行库合集:解决Windows程序依赖的终极方案 【免费下载链接】vcredist AIO Repack for latest Microsoft Visual C Redistributable Runtimes 项目地址: https://gitcode.com/gh_mirrors/vc/vcredist 你是否遇到过这样的烦恼?刚下载了一个…...
从U-Net到DocUNet:一个图像分割经典架构如何“跨界”解决文档矫正难题?
从U-Net到DocUNet:经典分割架构如何重塑文档图像矫正技术 当你在咖啡馆随手拍下一张皱巴巴的收据时,是否想过手机镜头捕捉的二维图像如何还原成平整的文档?这个看似简单的需求背后,隐藏着计算机视觉领域一个极具挑战性的几何变换问…...
运算放大器:从虚短虚断到负反馈,掌握模拟电路核心设计
1. 从“石头”与“水库”到“运算放大器”:一个电子世界的演化故事如果你拆开过任何一台现代电子设备,从手机到汽车,从血糖仪到工业机器人,你大概率会找到一个或多个不起眼的八脚或十四脚黑色小方块——运算放大器。它不像CPU那样…...
基于金橙子MarkEzd.dll的激光打标二次开发实战:从函数解析到自动化标刻系统构建
1. 金橙子MarkEzd.dll开发入门指南 第一次接触激光打标二次开发的朋友可能会被各种专业术语吓到,但其实只要掌握几个核心概念就能快速上手。MarkEzd.dll是北京金橙子科技为EZCAD2激光打标软件提供的开发接口,相当于给开发者开了一个"后门"&…...
告别默认设置!用Altium Designer 21规则模板,5分钟搞定四层板全流程设计规范
告别重复劳动:Altium Designer 21规则模板的高效应用指南 在电子设计领域,效率与标准化往往决定了项目成败。想象一下这样的场景:当你接手一个新的四层板设计项目时,是否曾为反复配置那些看似相同却又容易遗漏的设计规则而烦恼&a…...
从B类到连续类:一篇讲透功放效率与带宽的“鱼与熊掌”兼得史
射频功率放大器的进化论:从B类到连续类的带宽革命 在无线通信技术狂飙突进的三十年里,有个看似矛盾的命题始终困扰着工程师:如何让功率放大器同时"吃得少"(高效率)和"干得多"(宽带宽&…...
碳化硅肖特基二极管B1D06065KS在PFC电路中的高效应用与设计要点
1. 项目概述:从一颗二极管到高效能电源的心脏最近在做一个服务器电源的优化项目,客户对效率和功率密度要求近乎苛刻。传统的硅基器件在高压、高频下的损耗和温升成了瓶颈,团队讨论后决定在关键的前级功率因数校正(PFC)…...
