2020年蓝桥杯Java B组第二场题目+部分个人解析

#A:门牌制作 624

解一:

public static void main(String[] args) {

   int count=0;

    for(int i=1;i<=2020;i++) {

    int n=i;

   while(n>0) {

     if(n%10==2) {

      count++;

    }

    n/=10;

 }

}

System.out.println(count);

}

解二: 

public static void main(String[] args) {

        int cnt=0;

        for (int i = 1; i <= 2020; i++) {

            String s=i+"";

            for (int j = 0; j < s.length(); j++) {

                if(s.charAt(j)=='2') cnt++;

            }

        }

        System.out.println(cnt);

    }

#寻找 2020  16520

public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner = new Scanner(System.in);
		char[][] ch = new char[300][300];
		long sum = 0 ;
		for (int i = 0; i < ch.length; i++) {
			ch[i] = scanner.nextLine().toCharArray();
		}
		for (int i = 0; i < ch.length; i++) {
			for (int j = 0; j < ch[0].length; j++) {
				if (j+3<ch[0].length) {
					if (ch[i][j]=='2' && ch[i][j+1]=='0' &&ch[i][j+2]=='2' &&ch[i][j+3]=='0' ) {
						sum++;
					}
				}
				if (i+3<ch.length) {
					if (ch[i][j]=='2' && ch[i+1][j]=='0' &&ch[i+2][j]=='2' &&ch[i+3][j]=='0') {
						sum++;
					}
				}
				if (i+3<ch.length && j+3<ch[0].length) {
					if (ch[i][j]=='2' && ch[i+1][j+1]=='0' &&ch[i+2][j+2]=='2' &&ch[i+3][j+3]=='0') {
						sum++;
					}
				}
			}
		}
		System.out.println(sum);//16520
	}


#C: 蛇形填数 761

解题思路:先手写几行就可以发现,第一行第一列的值为1,第二行第二列的值为5.第三行第三列的值为13,第四行第四列的值为25,仔细观察就可以发现第i行第i列的值为  a = a + (i*4)。

public static void main(String[] args) {

// TODO Auto-generated method stub

     int sum = 1;

     for (int i = 0; i < 20; i++) {

         sum = sum + (i * 4);

}System.out.println(sum);

}

#D:七段码dfs)  80


  解一:

static int[][] list = new int[][]{

            {0,1,0,0,0,1,0},

            {1,0,1,0,0,0,1},

            {0,1,0,1,0,0,1},

            {0,0,1,0,1,0,0},

            {0,0,0,1,0,1,1},

            {1,0,0,0,1,0,1},

            {0,1,1,0,1,1,0},

    };

    static Set<Set<Integer>> set = new HashSet<>();

    static boolean[] booleans = new boolean[7];



    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        ArrayList<Integer> arr = new ArrayList<>();

        for (int i = 0 ; i < 7 ; i++){

            booleans[i] = true;

            arr.add(i);

            set.add(new HashSet<>(arr));

            dfs(arr);

            booleans[i] = false;

            arr.remove(arr.size()-1);

        }

        System.out.println(set.size());

    }



    private static void dfs(ArrayList<Integer> arr) {

        set.add(new HashSet<>(arr));

        int last = arr.get(arr.size()-1);

        for (int i = 0 ; i < list[last].length ; i++){

            if (list[last][i] == 1 && !booleans[i]){

                booleans[i] = true;

                arr.add(i);

                dfs(arr);

                booleans[i] = false;

                arr.remove(arr.size()-1);

            }

        }

    }

  解二:

public static void main(String[] args) {
			creatGraph();
			dfs(1);
			System.out.println(count);
		}

		private static void creatGraph() {
			arr[1][2] = arr[1][6] = 1;
			arr[2][1] = arr[2][7] = arr[2][3] = 1;
			arr[3][2] = arr[3][4] = arr[3][7] = 1;
			arr[4][3] = arr[4][5] = 1;
			arr[5][4] = arr[5][6] = arr[5][7] = 1;
			arr[6][1] = arr[6][5] = arr[6][7] = 1;
		}

		private static void dfs(int k) {
			if (k > 7) {
				check();
				int q = 0;
				for (int i = 1; i <= 7; i++) {
					if (v[i] && res[i] == i) {
						q++;
					}
				}
				if (q == 1)
					count++;
				return;
			}
			v[k] = true;
			dfs(k + 1);
			v[k] = false;
			dfs(k + 1);
		}

		private static void check() {
			for (int i = 1; i <= 7; i++) {
				res[i] = i;
			}
			for (int i = 1; i <= 7; i++) {
				for (int j = 1; j <= 7; j++) {
					if (arr[i][j] != 0 && v[i] && v[j]) {
						int fx = find(i), fy = find(j);
						if (fx != fy) {
							res[fx] = fy;
						}
					}
				}
			}
		}

		private static int find(int p) {
			if (res[p] == p) {
				return p;
			} else {
				res[p] = find(res[p]);
				return res[p];
			}
		}

解三:

 static ArrayList<Integer>[] list;
	        static HashSet<Integer> set = new HashSet<Integer>();

	        public static void main(String[] args) {
	            init();
	            for(int i=0; i<7; ++i) {
	                vis[0] = i;
	                set.add(1<<i);
	                dfs(1, 1<<i);
	            }
	            System.out.println(set.size());
	        }

	        static int[] vis = new int[7];
	        public static void dfs(int n, int v) {
	            for(int i=0; i<n; ++i) {
	                for(int t : list[vis[i]]) {
	                    int p = v|(1<<t);
	                    if(!set.contains(p)) {
	                        set.add(p);
	                        vis[n] = t;
	                        dfs(n+1, p);
	                    }
	                }
	            }
	        }

	
	        public static void init() {
	            //存储七位数的关系 
	            list = new ArrayList[7];
	            for(int i=0; i<7; ++i) {
	                list[i] = new ArrayList<Integer>();
	            }
	            list[0].add(1);
	            list[0].add(5);

	            list[1].add(0);
	            list[1].add(6);
	            list[1].add(2);

	            list[2].add(1);
	            list[2].add(3);
	            list[2].add(6);

	            list[3].add(2);
	            list[3].add(4);

	            list[4].add(3);
	            list[4].add(5);
	            list[4].add(6);

	            list[5].add(0);
	            list[5].add(4);
	            list[5].add(6);

	            list[6].add(1);
	            list[6].add(2);
	            list[6].add(4);
	            list[6].add(5);
	        }

#E:排序  jonmlkihgfedcba

--------------------------------------------------------------------

--------------------------------------------------------------------

#F:成绩分析模拟、暴力)

public static void main(String[] args) {
		Scanner sc=new Scanner(System.in);
		  int n=sc.nextInt();
		  int a,max=0,min=100;
		  double sum=0;
		  for(int i=0;i<n;i++) {
			  a=sc.nextInt();
			  if(max<a) {
				  max=a;
			  }
			  if(min>a) {
				  min=a;
			  }
			  sum+=a;
		  }
		  System.out.println(max);
		  System.out.println(min);
		  System.out.printf("%.2f",sum/n);

	}


#G:单词分析字符串)

 

public static void main(String[] args) {

 

Scanner sc=new Scanner(System.in);

String str=sc.next();

int[]arr =new int[26];

int a=0;;char ch = 'a';

for(int i=0;i<str.length();i++) {

    arr[str.charAt(i)-97]++;

    if(arr[str.charAt(i)-97]>a) {

     a=arr[str.charAt(i)-97];

     ch=str.charAt(i);

    }else if(arr[str.charAt(i)-97]==a) {

     if(ch-str.charAt(i)>0) {

     a=arr[str.charAt(i)-97];

         ch=str.charAt(i);

     }

    }

}

System.out.println(ch); System.out.println(a);





}

#H: 数字三角形DP)


   

 public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);

        int n=scanner.nextInt();

        int [][]arr=new int[n+1][n+1];

        for (int i = 1; i < arr.length; i++) {

            for (int j = 1; j <= i; j++) {

                int s=scanner.nextInt();

                arr[i][j]=s+Math.max(arr[i-1][j-1],arr[i-1][j]);

            }

        }

        System.out.println(n%2==1?arr[n][n/2+1]:Math.max(arr[n][n/2],arr[n][n/2+1]));

    }

}

  解二:

  public static void main(String[] args) {

        Scanner scanner = new Scanner(System.in);

        int n = scanner.nextInt();

        //base case : f(1) = a1

        int[][] dp = new int[n][n+1];

        int temp = scanner.nextInt();

        dp[0][0] = temp;

        int max = Integer.MIN_VALUE;

        for (int i = 2; i <= n; i++) {

            for (int j = 0; j < i; j++) {

                temp = scanner.nextInt();

                if (j != 0 && j != (i-1)) {

                    dp[i-1][j] = Integer.max(dp[i-2][j-1],dp[i-1][j])+temp;

                }else if (j == 0) {

                    dp[i-1][j] = dp[i-2][j]+temp;

                }else {

                    dp[i-1][j] = dp[i-2][j-1]+temp;

                }

                if(dp[i-1][j] > max)

                    max = dp[i-1][j];

            }

            dp[i-1][n] = max;

            max = Integer.MIN_VALUE;

        }

        System.out.println(dp[n-1][n]);

        scanner.close();

}

# I:子串分值和规律题吧)

 

解一:   

 public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        int[] arr = new int[26];

        long res = 0;

        for(int i = 0;i < 26;i++){

            arr[i] = -1;

        }

        String s = sc.nextLine();

        String[] str = s.split("");

        int willIndex = str.length;

        for(int i = 0;i < str.length;i++){

            int lastIndex = arr[str[i].charAt(0)-97];

            res += (long)(i - lastIndex)*(willIndex - i);

            arr[str[i].charAt(0)-97] = i;

        }

        System.out.println(res);

    }

  解二:

public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        String str = sc.next();

        int[] nums = new int[26];

        long res = 0;

        long n = str.length();

        str = "0"+str;

        for (int i = 1; i < str.length(); i++) {

           

            res += (i - nums[str.charAt(i) - 'a']) * (n - i+1);

         

            nums[str.charAt(i) - 'a'] = i;

        }

        System.out.println(res);

    }

#J: 装饰珠

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/979028.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

DeepSeek 202502 开源周合集

DeepSeek 本周的开源项目体现了其在 AI 技术栈中的深厚积累&#xff0c;从硬件协同优化&#xff08;FlashMLA&#xff09;、通信库&#xff08;DeepEP&#xff09;、核心计算&#xff08;DeepGEMM&#xff09;到推理模型&#xff08;DeepSeek-R1&#xff09;&#xff0c;覆盖了…

Ubuntu2204下使用NVIDIA GeForce RTX 4090进行DeepSeek-R1-Distill-Llama-8B模型微调

Ubuntu2204下使用NVIDIA GeForce RTX 4090进行DeepSeek-R1-Distill-Llama-8B模型微调 环境准备创建Python微调环境准备数据集准备模型文件 模型微调模型预测原始模型预测微调模型预测 使用unsloth&#xff0c;可以方便地对大模型进行微调。以微调DeepSeek-R1-Distill-Llama-8B为…

DeepSeek 开源狂欢周(二)DeepEP深度技术解析 | 解锁 MoE 模型并行加速

在大模型时代&#xff0c;Mixture-of-Experts (MoE) 模型凭借其强大的容量和高效的计算能力&#xff0c;成为研究和应用的热点。然而&#xff0c;MoE 模型的训练和推理面临着巨大的专家并行通信挑战。近日&#xff0c;DeepSeek 开源了 DeepEP 项目&#xff0c;为解决这一难题提…

(IDE接入DeepSeek)简单了解DeepSeek接入辅助开发与本地部署建议

重点&#xff1a;IDE接入DeepSeek是否收费 收费&#xff01; 本文章主要是为了给小白避雷&#xff0c;目前很多文章告诉大家怎么接入DeepSeek&#xff0c;但是并未告知大家是否收费。如果是想白嫖的&#xff0c;就可以不用去接入了。 一、引言 最近爆火的AI人工智能工具DeepSe…

FPGA开发时序图绘制

开始的时候画时序图都是拿 visio 硬连&#xff0c;但是那个线宽太难统一了&#xff0c;丑不拉几的&#xff0c;遂学习 waveform 语法使用代码来画时序图。 开始 Vscode 中安装 waveform render 或者在 GitHub 搜索 wavedrom 安装即可。由于 vscode 是我常用的编辑器&#xff…

windows下安装pyenv+virtualenv+virtualenvwrapper

1、下载pyenv 进入git官网&#xff0c;打包下载zip到本地 2、解压到安装目录 解压下载好的pyenv-win-master.zip到自己的安装目录&#xff0c;如D:\Program Files 3、配置环境变量 右击桌面 此电脑 --> 属性 --> 高端系统设置 --> 环境变量 --> 新建系统变量…

自动化设备对接MES系统找DeepSeek问方案

项目需要现场的PLC设备HTTP协议JSON格式的方式对接MES系统平台&#xff0c;于是试了一下&#xff1a; 找到的相关资源链接在这里。

李代数(Lie Algebras)与Attention:深度学习中的数学之美

李代数与Attention&#xff1a;深度学习中的数学之美 引言 作为一名深度学习研究者&#xff0c;您一定对Transformer模型和其中的注意力机制&#xff08;Attention&#xff09;不陌生。Attention通过查询&#xff08;Query&#xff09;、键&#xff08;Key&#xff09;和值&a…

OpenCV给图像添加噪声

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 如果你已经有了一张干净的图像&#xff0c;并希望通过编程方式向其添加噪声&#xff0c;可以使用 OpenCV 来实现这一点。以下是一个简单的例子&a…

vscode下载安装教程(附安装包)vscode图文安装教程最新版

文章目录 一、vscode下载二、vscod安装教程1.启动vscode安装程序&#xff1a;2.应对提示&#xff1a;3.接受协议&#xff1a;4.更改vscode安装路径&#xff1a;5.推进安装vscode&#xff1a;6.创建vscode快捷方式&#xff1a;7.开始安装vscode&#xff1a;8.完成vscode安装&…

深度解读 Chinese CLIP 论文:开启中文视觉对比语言预训练

目录 论文概述1.论文摘要2.论文脑图3.论文创新3.1模型构建3.2训练方法3.3数据构建3.4部署优化 4.模型架构 论文解析1. 引言2. 方法2.1数据说明2.2预训练方法2.2.1模型初始化方法2.2.2两阶段预训练方法 2.3预训练细节2.3.1模型初始化2.3.2第一阶段预训练2.3.3第二阶段预训练2.3.…

【开源】低代码 C++程序框架,Linux多线程程序

大家好&#xff0c;欢迎来到停止重构的频道。 本期介绍我们新的C低代码框架&#xff1a;Bees&#xff0c;用于编写Linux/Unix的多线程程序。 低代码框架一般是不会对C程序下手的&#xff0c;因为C程序一般是比较复杂的程序&#xff0c;光是多线程同步就够头疼的了。 但是我们…

重新审视 ChatGPT 和 Elasticsearch:第 2 部分 - UI 保持不变

作者&#xff1a;来自 Elastic Jeff Vestal 本博客在第 1 部分的基础上进行了扩展&#xff0c;介绍了基于 RAG 的搜索系统的功能齐全的 Web UI。最后&#xff0c;你将拥有一个将检索、搜索和生成过程结合在一起的工作界面&#xff0c;同时使事情易于调整和探索。 不想读完整个内…

点云 PCL 滤波在自动驾驶的用途。

1.直通滤波 2.体素滤波、 2.1 分类&#xff1a;VoxelGrid&#xff08;求体素的重心又称质心点&#xff09;和ApproximateVoxelGrid&#xff08;求体素的中心点&#xff09;两种体素滤波器&#xff0c; 2.2 衍生&#xff1a;此外衍生了改进体素滤波&#xff08;求距离重心最近…

人工智能 pytorch篇

pytorch是一个深度学习框架&#xff0c;他封装了张量&#xff08;Tensor&#xff09;&#xff0c;Pytorch中的张量就是元素为同一种数据类型的多维矩阵。在Pytorch中&#xff0c;张量以类的形式封装起来&#xff0c;对张量的一些运算、处理的方法被封装在类中。 pytorch的安装…

Cherno 游戏引擎笔记(91~111)

好久不见&#xff01; 个人库的地址&#xff1a;&#xff08;GitHub - JJJJJJJustin/Nut: The game_engine which learned from Cherno&#xff09;&#xff0c;可以看到我及时更新的结果。 -------------------------------Saving & Loading scene-----------------------…

DeepSeek行业应用实践报告-智灵动力【112页PPT全】

DeepSeek&#xff08;深度搜索&#xff09;近期引发广泛关注并成为众多企业/开发者争相接入的现象&#xff0c;主要源于其在技术突破、市场需求适配性及生态建设等方面的综合优势。以下是关键原因分析&#xff1a; 一、技术核心优势 开源与低成本 DeepSeek基于开源架构&#xf…

项目8:信用违约预测-集成学习

目录 背景说明 项目介绍 导入模块 数据加载 分析与处理数据 划分数据集 使用随机森林创建并训练模型 通过参数搜索和过采样&#xff0c;缓解标签不平衡问题 小结 背景说明 风险已经成为了今年金融市场的重要主题之一&#xff0c;银行作为贷方&#xff0c;随时都面临着借贷者违约…

一文了解:部署 Deepseek 各版本的硬件要求

很多朋友在咨询关于 DeepSeek 模型部署所需硬件资源的需求&#xff0c;最近自己实践了一部分&#xff0c;部分信息是通过各渠道收集整理&#xff0c;so 仅供参考。 言归正转&#xff0c;大家都知道&#xff0c;DeepSeek 模型的性能在很大程度上取决于它运行的硬件。我们先看一下…

Redis分布式锁故障处理:当Redis不可用时的应对策略

Redis分布式锁故障处理&#xff1a;当Redis不可用时的应对策略 在分布式系统中&#xff0c;Redis因其高性能和丰富的特性常被用于实现分布式锁。但当加锁过程中Redis服务不可用时&#xff0c;系统将面临严重挑战。本文将深入探讨这一问题&#xff0c;并提供多维度解决方案。 目…