蓝桥杯专题-真题版含答案-【祖冲之割圆法】【错误票据】【显示为树形】【汉字相乘】

Unity3D特效百例案例项目实战源码Android-Unity实战问题汇总
游戏脚本-辅助自动化Android控件全解手册再战Android系列
Scratch编程案例软考全系列Unity3D学习专栏
蓝桥系列ChatGPT和AIGC

👉关于作者

专注于Android/Unity和各种游戏开发技巧,以及各种资源分享(网站、工具、素材、源码、游戏等)
有什么需要欢迎底部卡片私我,获取更多支持,交流让学习不再孤单

CSDN-芝麻粒儿

👉实践过程

😜祖冲之割圆法

南北朝时,我国数学家祖冲之首先把圆周率值计算到小数点后六位,比欧洲早了1100年!
他采用的是称为“割圆法”的算法,实际上已经蕴含着现代微积分的思想。
如图【1.jpg】所示,圆的内接正六边形周长与圆的周长近似。
在这里插入图片描述

多边形的边越多,接近的越好!我们从正六边形开始割圆吧。如图【2.jpg】所示,从圆心做弦的垂线,可把6边形分割为12边形。
在这里插入图片描述
该12边形的边长a’的计算方法很容易利用勾股定理给出。
之后,再分割为正24边形,…如此循环会越来越接近圆周。
之所以从正六边开始,是因为此时边长与半径相等,便于计算。取半径值为1,开始割圆吧!
以下代码描述了割圆过程。
程序先输出了标准圆周率值,紧接着输出了不断分割过程中多边形边数和所对应的圆周率逼近值。

publicclassDemo10_B21
{publicstaticvoid main(String[] args){System.out.println("标准 " + Math.PI);double a = 1; int n = 6;for(int i=0; i<10; i++){double b = Math.sqrt(1-(a/2)*(a/2));a = Math.sqrt((1-b)*(1-b) + (a/2)*(a/2));n = n*2; //填空System.out.println(n + "  " + n*a/2 );  // 填空}}
}
运行结果:
标准 3.141592653589793
12  3.105828541230249
24  3.1326286132812378
48  3.1393502030468667
96  3.14103195089051
192  3.1414524722854624
384  3.141557607911858
768  3.1415838921483186
1536  3.1415904632280505
3072  3.1415921059992717
6144  3.1415925166921577

😜错误票据

某涉密单位下发了某种票据,并要在年终全部收回。
每张票据有唯一的ID号。全年所有票据的ID号是连续的,但ID的开始数码是随机选定的。
因为工作人员疏忽,在录入ID号的时候发生了一处错误,造成了某个ID断号,另外一个ID重号。
你的任务是通过编程,找出断号的ID和重号的ID。
假设断号不可能发生在最大和最小号。
要求程序首先输入一个整数N(N<100)表示后面数据行数。
接着读入N行数据。
每行数据长度不等,是用空格分开的若干个(不大于100个)正整数(不大于100000)
每个整数代表一个ID号。
要求程序输出1行,含两个整数m n,用空格分隔。
其中,m表示断号ID,n表示重号ID
例如:
用户输入:
2
5 6 8 11 9
10 12 9

则程序输出:
7 9
再例如:
用户输入:
6
164 178 108 109 180 155 141 159 104 182 179 118 137 184 115 124 125 129 168 196
172 189 127 107 112 192 103 131 133 169 158
128 102 110 148 139 157 140 195 197
185 152 135 106 123 173 122 136 174 191 145 116 151 143 175 120 161 134 162 190
149 138 142 146 199 126 165 156 153 193 144 166 170 121 171 132 101 194 187 188
113 130 176 154 177 120 117 150 114 183 186 181 100 163 160 167 147 198 111 119
则程序输出:
105 120
资源约定:
峰值内存消耗(含虚拟机)< 64M
CPU消耗< 2000ms
请严格按要求输出,不要画蛇添足地打印类似:“请您输入…”的多余内容。
所有代码放在同一个源文件中,调试通过后,拷贝提交该源码。
注意:不要使用package语句。不要使用jdk1.6及以上版本的特性。
注意:主类的名字必须是:Main,否则按无效代码处理。

import java.io.IOException;
import java.util.PriorityQueue;
import java.util.Scanner;
class Question7UnAmendment{public static void main(String[] args) throws IOException {String s[]=new String[10];int lines;char ch;PriorityQueue<Integer>priorityQueue=new PriorityQueue<Integer>();lines= System.in.read()-'0';lines++;int sum=0;while(lines>0){ch=(char) System.in.read();if(ch==' '){if(sum!=0){priorityQueue.add(sum);sum=0;}}else if(ch>='0'&&ch<='9'){if(ch=='0'&&sum==0){priorityQueue.add(0);continue;}sum*=10;sum+=ch-'0';}else if(ch=='\n'){lines--;if(sum!=0){priorityQueue.add(sum);sum=0;}}}int m =-1,n = -1;int i=priorityQueue.peek();while(!priorityQueue.isEmpty()){if(i!=priorityQueue.peek()){if(priorityQueue.peek()-i==1){m=i;priorityQueue.add(i);}else if (i-priorityQueue.peek()==1) {n=priorityQueue.peek();priorityQueue.poll();}}i++;priorityQueue.poll();}System.out.println(m+" "+n);}
}

😜显示为树形

树形结构应用十分广泛。
下面这段代码根据用户添加的数据,在内存中构建一个逻辑上等价的树形结构。
通过ShowTree() 可以把它显示为控制中的样子。
其中:
a.add(‘a’, ‘b’);
a.add(‘b’, ‘e’);
表示:‘b’ 作为 ‘a’ 的孩子节点;‘e’ 作为 'b’的孩子节点。
如代码中给出的示例数据,输出结果应该为:

a–b–e
| |–f–j
| |–k
|–c
|–d–g–h
|–i
请阅读下面的代码,填写缺失的部分(下划线部分)。
注意:请把填空的答案(仅填空处的答案,不包括题面)存入考生文件夹下对应题号的“解答.txt”中即可。
直接写在题面中不能得分。

import java.util.*;
class MyTree
{private Map map = new HashMap();public void add(char parent, char child){List<Character> t = (List<Character>)map.get(parent);if(t==null){t = new Vector<Character>();map.put(parent, t) ;  // 填空1}t.add(child);}public List<Character> getChild(char x){return (List<Character>)map.get(x);}
}
public class My
{public static List<String> showTree(MyTree tree, char x){List<Character> t = tree.getChild(x);List<String> r = new Vector<String>();if(t==null){r.add("" + x);return r;}for(int i=0; i<t.size(); i++){List<String> ri = showTree(tree, t.get(i));for(int j=0; j<ri.size(); j++){String pre = "|  ";if(j==0){if(i==0)pre = x + "--";else pre = "|--";}else{if(i==  t.size()-1 )    // 填空2pre = "   ";elsepre = "|  ";}r.add(pre + ri.get(j));}}return r;}public static void main(String[] args){MyTree a = new MyTree();a.add('a', 'b');a.add('b', 'e');a.add('b', 'f');a.add('a', 'c');a.add('a', 'd');a.add('d', 'g');a.add('d', 'i');a.add('g', 'h');a.add('f', 'j');a.add('f', 'k');List<String> lst = showTree(a, 'a');for(int i=0; i<lst.size(); i++){System.out.println(lst.get(i));}}
}

😜汉字相乘

(编程题)下列乘法算式中:每个汉字代表 1 个数字(1~9)。相同的汉字代表相同的
数字,不同的汉字代表不同的数字。
赛软件 * 比赛 = 软件比拼
试编程确定使得整个算式成立的数字组合,如有多种情况,请给出所有可能的答案。
【参考结果】
465 * 14 = 6510

public class Competition {public void getResult() {int s, r, j, b, p;for (s = 2; s <= 9; s++) {for (r = 0; r <= 9; r++) {if(r==s)continue;for (j = 2; j <= 9; j++) {if(j==r||j==s)continue;for (b = 0; b <= 9; b++) {if(b==s||b==r||b==j)continue;for (p = 0; p <= 9; p++) {if(p==b||p==j||p==r||p==s)continue;int left = (s * 100 + r * 10 + j) * (b * 10 + s);int right = r * 1000 + j * 100 + b * 10 + p;if (left == right) {System.out.println("" + s + r + j +" * "+b+s+" = "+r+j+ b + p);}}}}}}}public static void main(String[] args) {Competition s = new Competition();//   s.biJiao();s.getResult();}
}

👉其他

📢作者:小空和小芝中的小空
📢转载说明-务必注明来源:https://zhima.blog.csdn.net/
📢这位道友请留步☁️,我观你气度不凡,谈吐间隐隐有王者霸气💚,日后定有一番大作为📝!!!旁边有点赞👍收藏🌟今日传你,点了吧,未来你成功☀️,我分文不取,若不成功⚡️,也好回来找我。

温馨提示点击下方卡片获取更多意想不到的资源。
空名先生

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【自定义Source、Sink】Flink自定义Source、Sink对ClickHouse进行读和批量写操作

ClickHouse官网文档 Flink 读取 ClickHouse 数据两种驱动 ClickHouse 官方提供Clickhouse JDBC.【建议使用】第3方提供的Clickhouse JDBC. ru.yandex.clickhouse.ClickHouseDriver ru.yandex.clickhouse.ClickHouseDriver.现在是没有维护 ClickHouse 官方提供Clickhouse JDBC…

华为ensp-无线小型wlan配置教程

实验拓扑图&#xff1a; 实验平台&#xff1a;ENSP510 实验设备&#xff1a;Centered Cloud、AC6005、AP4030、STA、Cellphone vlan范围划分 vlan 101 : 10.23.101.1/24 vlan 100 : 10.23.100.1/24实验步骤&#xff1a; 一、创建VLAN100、101配置端口类型 [AC1]vlan batch 100…

STM32启动流程详解(超全,startup_stm32xx.s分析)

单片机上电后执行的第一段代码 1.初始化堆栈指针 SP_initial_sp 2.初始化 PC 指针Reset_Handler 3.初始化中断向量表 4.配置系统时钟 5.调用 C 库函数_main 初始化用户堆栈&#xff0c;然后进入 main 函数。 在正式讲解之前&#xff0c;我们需要了解STM32的启动模式。 STM32的…

【Vue】日期格式化(全局)

系列文章 【Vue】vue增加导航标签 本文链接&#xff1a;https://blog.csdn.net/youcheng_ge/article/details/134965353 【Vue】Element开发笔记 本文链接&#xff1a;https://blog.csdn.net/youcheng_ge/article/details/133947977 【Vue】vue&#xff0c;在Windows IIS平台…

关于“Python”的核心知识点整理大全23

目录 ​编辑 第&#xff11;0 章 文件和异常 10.1 从文件中读取数据 10.1.1 读取整个文件 pi_digits.txt file_reader.py 10.1.2 文件路径 10.1.3 逐行读取 file_reader.py 10.1.4 创建一个包含文件各行内容的列表 10.1.5 使用文件的内容 pi_string.py 往期快速传…

react内置组件之<Profiler></Profiler>

1、作用&#xff1a; Profiler 是 React 提供的一个内置组件&#xff0c;用于帮助你检测并分析 React 应用中的性能瓶颈。它可以帮助你了解组件渲染所花费的时间&#xff0c;并提供有关哪些组件需要进行优化的信息。 2、示例&#xff1a; import React, { Profiler } from r…

Microsoft visual studio 2013卸载方法

1、问 题 Microsoft visual studio 2013 无法通过【程序与功能】卸载 2、解决方法 使用微软的Microsoft visual studio 2013 专用卸载工具 工具下载链接&#xff1a;https://github.com/Microsoft/VisualStudioUninstaller/releases 或 链接&#xff1a;https://pan.baidu.c…

【自动化测试】web3py 连接 goerli

web3py 连接 goerli 直接使用库里方法 if __name__ __main__:from web3.auto.infura.goerli import w3w3.eth.get_balance(get_address_by_private_key(os.getenv("AAA_KEY")))error info: websockets.exceptions.InvalidStatusCode: server rejected WebSocket …

02-MQ入门之RabbitMQ简单概念说明

二&#xff1a;RabbitMQ 介绍 1.RabbitMQ的概念 RabbitMQ 是一个消息中间件&#xff1a;它接受并转发消息。你可以把它当做一个快递站点&#xff0c;当你要发送一个包裹时&#xff0c;你把你的包裹放到快递站&#xff0c;快递员最终会把你的快递送到收件人那里&#xff0c;按…

LeetCode 1143最长公共子序列 1035不相交的线 53最大子序和 | 代码随想录25期训练营day53

动态规划算法11 LeetCode 1143 最长公共子序列 2023.12.16 题目链接代码随想录讲解[链接] int longestCommonSubsequence(string text1, string text2) {//1确定dp二维数组&#xff0c;dp[i][j]表示以text1[i-1]、text2[j-1]结尾相同的公共子序列的最大长度vector<vecto…

普通二叉树和右倾斜二叉树--LeetCode 111题《Minimum Depth of Binary Tree》

本文将以解释计算二叉树的最小深度的思路为例&#xff0c;致力于用简洁易懂的语言详细描述普通二叉树和右倾斜二叉树在计算最小深度时的区别。通过跟随作者了解右倾斜二叉树的概念以及其最小深度计算过程&#xff0c;读者也将对左倾斜二叉树有更深入的了解。这将为解决LeetCode…

集群和分布式

1、什么是集群 集群是由多个计算机组成的一组相互协作的计算机集合&#xff0c;通过共享资源和任务分配&#xff0c;以实现高可用性、高性能和可扩展性的目标。其主要目的是提高计算机系统的可靠性、可用性、性能和可扩展性。在集群中&#xff0c;每个计算机节点都有其独立的计…

BIM 技术:CIM (City Information Modeling) 1-7 级

本心、输入输出、结果 文章目录 BIM 技术&#xff1a;CIM &#xff08;City Information Modeling&#xff09; 1-7 级前言城市信息模型&#xff08;CIM&#xff09;概述城市信息模型分级介绍CIM 1CIM 2CIM 3CIM 4CIM 5CIM 6CIM 7 花有重开日&#xff0c;人无再少年实践是检验真…

【Linux】dump命令使用

dump命令 dump命令用于备份文件系统。使用dump命令可以检查ext2/3/4文件系统上的文件&#xff0c;并确定哪些文件需要备份。这些文件复制到指定的磁盘、磁带或其他存储介质保管。 语法 dump [选项] [目录|文件系统] bash: dump: 未找到命令... 安装dump yum -y install …

短说PC3.1.1正式版发布|发布页全新设计、新增草稿箱等功能

Hi 大家好&#xff0c; 我是给你们带来惊喜的运营小番茄。 本期更新为短说PC端 3.1.1正式版。 本次V3.1.1版本主要修复了V3.1.0中的问题。V3.1版本带来的更新有&#xff1a; ①发布页全新设计&#xff1b; ②草稿箱功能上线&#xff1b; ③门户首页新增页脚模块。 详情可…

TableView复用机制的坑

TableView复用机制的坑 复用机制 UITableView 首先加载能够覆盖一屏幕的 UITableViewCell&#xff08;具体个数要根据每个 cell 的高度而定&#xff09;。 然后当我们往上滑动时&#xff08;往下滑动同理&#xff09;&#xff0c;需要一个新的 cell 放置在列表的下方。此时&…

SpringBoot Starter机制(自定义Start案例,实际开发场景中的短信模拟,AOP实现日志打印)

前言&#xff1a; 在我们上一篇博客中&#xff0c;实现Freemarke的增删改查&#xff0c;今天分享的是关于SpringBoot Starter机制-- 1.SpringBoot Starter 1.1.什么是SpringBoot Starter SpringBoot中的starter是一种非常重要的机制(自动化配置)&#xff0c;能够抛弃以前繁杂…

一款专业的磁盘坏道清除、彻底清除填充数据根据-硬盘数据彻底清除的方法分享

工具提供了硬盘坏道修复功能&#xff0c;你可以将损坏的磁盘放到软件分析&#xff0c;让软件找到错误的地方&#xff0c;让软件找到损坏的区域&#xff0c;通过内置的修复功能就可以将不能正常使用的部分恢复&#xff0c;从而让您的电脑磁盘可以保存很多数据&#xff0c;避免造…

贪心算法总结

贪心算法 什么是贪心算法题目汇总1800. 最大升序子数组和 什么是贪心算法 贪心的本质是选择每一阶段的局部最优&#xff0c;从而达到全局最优。 这么说有点抽象&#xff0c;来举一个例子&#xff1a; 例如&#xff0c;有一堆钞票&#xff0c;你可以拿走十张&#xff0c;如果想达…

Windows安装Tesseract OCR与Python中使用pytesseract进行文字识别

文章目录 前言一、下载并安装Tesseract OCR二、配置环境变量三、Python中安装使用pytesseract总结 前言 Tesseract OCR是一个开源OCR&#xff08;Optical Character Recognition&#xff09;引擎&#xff0c;用于从图像中提取文本。Pytesseract是Tesseract OCR的Python封装&am…