蓝桥杯考前复习三

2024-04-08 07:04
文章标签 蓝桥 复习 考前

本文主要是介绍蓝桥杯考前复习三,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

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);}}}

这篇关于蓝桥杯考前复习三的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/884884

相关文章

【408数据结构】散列 (哈希)知识点集合复习考点题目

苏泽  “弃工从研”的路上很孤独,于是我记下了些许笔记相伴,希望能够帮助到大家    知识点 1. 散列查找 散列查找是一种高效的查找方法,它通过散列函数将关键字映射到数组的一个位置,从而实现快速查找。这种方法的时间复杂度平均为(

C语言蓝桥杯

一、语言基础 竞赛常用库函数 最值查询 min_element和max_element在vector(迭代器的使用) nth_element函数的使用 例题lanqiao OJ 497成绩分析 第一种用min_element和max_element函数的写法 第二种用min和max的写法 二分查找 二分查找只能对数组操作 binary_s

计算机基础知识复习9.6

点对点链路:两个相邻节点通过一个链路相连,没有第三者 应用:PPP协议,常用于广域网 广播式链路:所有主机共享通信介质 应用:早期的总线以太网,无线局域网,常用于局域网 典型拓扑结构:总线型 星型(逻辑总线型) 介质访问控制  静态划分信道 信道划分介质访问控制 频分多路复用FDM 时分多路复用TDM 波分多路复用WDM 码分多路复用CDM 动态分配信道 轮询访问介质访问控

【抽代复习笔记】28-群(二十二):四道子群例题

例1:证明,循环群的子群是循环群。 证:设G = (a),H ≤ G。 (1)若H = {e},则H是一阶循环群; (2)设H至少包含2个元素,即设H = {...,a^(-k),a^(-j),a^(-i),a^0,a^i,a^j,a^k,...}, 其中a^i是H中正指数最小的元素,0<i<j<k, 下证a^i是H的生成元: 对任意的a^t∈H(t∈Z),存在q∈Z,使得t = qi

西方社会学理论教程复习重点

一.名词解释 1.社会静力学:旨在揭示人类社会的基本秩序。它从社会的横断面,静态的考察人类社会的结构和制度,寻找确立和维护人类社会的共存和秩序的原则。 2.社会动力学:纵观人类理性和人类社会发展的先后必要阶段,所叙述的是这一基本秩序在达到实证主义这一最终阶段之前所经过的曲折历程。 3.社会事实:一切行为方式,不论它是固定的还是不固定的,凡是能从外部给予个人以约束的,或者说是普遍存在于该社会各

完整版自考西方文论选复习笔记资料

西方文论选读复习资料 1.柏拉图:古希腊哲学家,苏格拉底的学生。公园前387年在雅典城外建立学园开始授徒讲学,撰写对话。柏拉图的作品即《柏拉图文艺对话集》中讨论美学和文艺理论问题较多的有:《大希庇阿斯》、《伊安》、《高吉阿斯》、《会饮》、《斐德若》、《理想国》、《斐利布斯》、《法律》等。 ▲柏拉图《伊安》和《斐若德》内容:主要阐述了"迷狂说"和"灵魂回忆说":柏拉图认为,高明的诗人都是凭灵

ia复习笔记

HCIA 常用配置以及快捷键:! 查看时间:display clock;修改时间:clock datetime 11:11:11 2023-1-1 查看设备当前的配置:display current-configuration;查看已保存的配置:display saved-configuration;保存配置:save;查看历史的十条命令:display history-command;

找不同-第15届蓝桥省赛Scratch初级组真题第4题

[导读]:超平老师的《Scratch蓝桥杯真题解析100讲》已经全部完成,后续会不定期解读蓝桥杯真题,这是Scratch蓝桥杯真题解析第183讲。 如果想持续关注Scratch蓝桥真题解读,可以点击《Scratch蓝桥杯历年真题》并订阅合集,查阅教程更方便。 第15届蓝桥杯省赛已于2024年8月24日落下帷幕,编程题一共有5题,分别如下: 猪八戒落地 游乐场 画西瓜 找不同 消

android kotlin复习 Anonymous function 匿名函数

1、还是先上个图,新建kt: 2、代码: package com.jstonesoft.myapplication.testfun main(){val count = "helloworld".count()println(count);println("------------------------")var count2 = "helloworld".count(){it ==

【蓝桥杯嵌入式(一)程序框架和调度器】

蓝桥杯嵌入式(一)程序框架和调度器 序、代码命名规则零、STM32和8051⼀、软件及环境安装⼆、⼯程框架搭建1.时钟配置2、SYS配置3、⼯程配置4、NVIC配置5.、Keil配置 三、系统初始化四、任务调度器 链接: 视频出处 序、代码命名规则 以下是一些常见的举例 零、STM32和8051 链接: 8位和32位单片机最本质区别 ⼀、软件及环境安装