③【Java 组】蓝桥杯省赛真题 [黄金连分数][马虎的算式]持续更新中...

news2025/1/12 6:05:28

在这里插入图片描述

个人简介:Java领域新星创作者;阿里云技术博主、星级博主、专家博主;正在Java学习的路上摸爬滚打,记录学习的过程~
个人主页:.29.的博客
学习社区:进去逛一逛~

在这里插入图片描述

蓝桥杯真题--持续更新中...

  • 一、黄金连分数(填空)
  • 二、马虎的算式(填空)





一、黄金连分数(填空)


题目描述

在这里插入图片描述

文字版:
黄金分割数 0.61803… 是个无理数,这个常数十分重要,在许多工程问题中会出现。有时需要把这个数字求得很精确。

对于某些精密工程,常数的精度很重要。也许你听说过哈勃太空望远镜,它首次升空后就发现了一处人工加工错误,对那样一个庞然大物,其实只是镜面加工时有比头发丝还细许多倍的一处错误而已,却使它成了“近视眼”!!

言归正传,我们如何求得黄金分割数的尽可能精确的值呢?有许多方法。

比较简单的一种是用连分数:

                  1
    黄金数 = ---------------------
                        1
             1 + -----------------
                          1
                 1 + -------------
                            1
                     1 + ---------
                          1 + ...

这个连分数计算的“层数”越多,它的值越接近黄金分割数。

请你利用这一特性,求出黄金分割数的足够精确值,要求四舍五入到小数点后 100 位。

小数点后3位的值为:0.618;

小数点后4位的值为:0.6180;

小数点后5位的值为:0.61803;

小数点后7位的值为:0.6180340。 (注意尾部的 00,不能忽略)

你的任务是:写出精确到小数点后 100 位精度的黄金分割值。

注意:尾数的四舍五入! 尾数是 0 也要保留


解题思路
根据题目给到黄金数的连分数示意图,我们可以发现,相邻层级之间的数是有关联的:
① 黄金数的分母 = 上一层数 分母+分子
② 黄金数的分子 = 上一层数分母
而分子以及分母的变化,恰巧就是斐波那契数列,那么我们就将问题转换成了求斐波那契额相邻两个数的比值。
同时题目要求写出精确到小数点后 100 位精度的黄金分割值,浮点数已经无法满足如此多的小数位,所以需要使用使用BigInteger和BigDecimal。


解题代码:

import java.math.BigDecimal;
import java.math.BigInteger;

//求斐波那契额相邻两个数的比值,需要保证小数点后101位准确,使用BigInteger和BigDecimal
public class 黄金连分数 {
	public static void main(String[] args) {
		BigInteger a = BigInteger.ONE; //a代表分子
		BigInteger b = BigInteger.ONE; //b代表分母
		
		for(int i = 3;i < 500;i++) { //第一层是 1/1 (已知),所以从第三个数开始
			BigInteger temp = b;
			b = a.add(b);       //黄金数的分母 = 上一层数 分母+分子
			a = temp;           //黄金数的分子 = 上一层数分母
		}
		
		//创建BigDecimal对象,小数点没有限制;
		//divide()方法表示除法运算
		BigDecimal divide = new BigDecimal(a,110).divide(new BigDecimal(b,110),BigDecimal.ROUND_HALF_DOWN);
		
		//输出黄金分割数,精确到101位(103代表字符数,包含0和.)
		System.out.println(divide.toPlainString().substring(0,103));
		//0.61803398874989484820458683436563811772030917980576286213544862270526046281890244970720720418939113748
		//小数点后101位,我们需要四舍五入至100位
		//0.6180339887498948482045868343656381177203091798057628621354486227052604628189024497072072041893911375
	}

}

答案:0.6180339887498948482045868343656381177203091798057628621354486227052604628189024497072072041893911375




二、马虎的算式(填空)


题目描述

在这里插入图片描述

文字版:
小明是个急性子,上小学的时候经常把老师写在黑板上的题目抄错了。

有一次,老师出的题目是:36x495=?

他却给抄成了:396x45=?

但结果却很戏剧性,他的答案竟然是对的!!

因为 36∗495=396∗45=17820。

类似这样的巧合情况可能还有很多,比如:27∗594=297∗54。

假设 a b c d e 代表 1 ~ 9 不同的 5 个数字(注意是各不相同的数字,且不含 0 )

能满足形如: ab∗cde = adb∗ce 这样的算式一共有多少种呢?

请你利用计算机的优势寻找所有的可能,并回答不同算式的种类数。

满足乘法交换律的算式计为不同的种类,所以答案肯定是个偶数。


解题思路

根据题目要求,遍历所有数字组合,找到符合条件算式时,种类数+1即可。


解题代码:

public class 马虎的算式 {
	public static void main(String[] args){
		int count = 0;  //记录种类数
		//数字1~9随机,故遍历所有循环,abcde间的所有数字可能,则需要不断嵌套循环
		for(int a = 1;a < 10;++a) {
			for(int b = 1;b < 10;++b) {
				//循环前进行判断,保证是各不相同的数字
				if(a != b) for(int c = 1;c < 10;++c) {
					if(a != c && b!= c) for(int d = 1;d < 10;++d) {
						if(a != d && b != d && c != d) for(int e = 1;e < 10;++e) {
							if(a != e && b != e && c != e && d != e)
								//如果 ab∗cde = adb∗ce
							if((a*10 + b ) * (c*100+d*10+e) == (c*10 + e ) * (a*100+d*10+b))
								//数量+1
								++count;
						}
					}
				}
			}
		}
		System.out.print(count);
	}
}





在这里插入图片描述

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

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

相关文章

echarts图表设置关于图例legend,限制图例可点击时最少保留显示一个图例

echarts图表设置关于图例legend&#xff0c;限制图例可点击时最少保留显示一个图例 echarts图表设置关于图例legend&#xff0c;限制图例可点击时最少保留显示一个图例&#xff0c;亲测有效&#xff1b; 代码如下&#xff1a; // 初始化ecahrts let echartsWrapper this.$e…

【Leedcode】栈和队列必备的面试题(第二期)

【Leedcode】栈和队列必备的面试题&#xff08;第二期&#xff09; 文章目录【Leedcode】栈和队列必备的面试题&#xff08;第二期&#xff09;一、题目&#xff08;用两个队列实现栈&#xff09;二、思路图解1.定义两个队列2.初始化两个队列3.往两个队列中放入数据4.两个队列出…

Linux 自带按键驱动

目录 一、内核检查 二、驱动文件 三、设备树 四、验证 一、内核检查 内核一般默认已经使能了 KEY 驱动&#xff0c;但是还是要检查一下。按照如下路径找到相应的配置选项&#xff1a; Device Drivers -> Input device support -> Generic in…

WebRTC拥塞控制原理解析

WebRTC包含三种拥塞控制算法&#xff0c;GCC、BBR和PCC。其中&#xff0c;BBR一开始是针对TCP的拥塞控制提出来的。它的输入为ACK/SACK&#xff0c;输出为拥塞窗口(congestion_window)发送速度(pacing_rate)。BBR是怎样运用到UDP&#xff0c;甚至运用到实时流媒体传输之上的&am…

Java-封装、继承、多态

封装 访问控制权限又成为“封装”&#xff0c;是面向对象三大特征中的一种。核心是&#xff0c;只对需要的类可见。 继承 继承是所有OOP&#xff08;Object Oriented Programming&#xff09;语言和Java语言都不可或缺的一部分。 只要创建一个类&#xff0c;就隐式继承自Obje…

【计算机组成原理】计算机硬件的基础组成、认识各个硬件部件

计算机组成原理&#xff08;一&#xff09; 计算机内部是通过电信号传递数据 电信号&#xff1a;分为高电平和低电平&#xff0c;分别代表1/0 数字、文字、图像如何用二进制表示? CPU如何对二进制数进行加减乘除? 如何存储这些二进制数的? 如何从内存中取出想要的数…

RuoYi-Flowable-Plus搭建(若依)

项目简介 1.本项目基于 RuoYi-Vue-Plus 进行二次开发&#xff0c;采用 Flowable 扩展工作流应用场景&#xff0c;支持在线表单设计和丰富的工作流程设计能力。2.本项目主要针对Flowable工作流场景开发&#xff0c;采用MIT开源协议&#xff0c;完全免费给个人及企业使用。3.环境…

(小甲鱼python)函数笔记合集七 函数(IX)总结 函数的递归、递归和迭代的区别详解

一、基础复习 函数的基本用法 创建和调用函数 函数的形参与实参等等函数的几种参数 位置参数、关键字参数、默认参数等函数的收集参数*args **args 解包参数详解函数中参数的作用域 局部作用域 全局作用域 global语句 嵌套函数 nonlocal语句等详解函数的闭包&#xff08;工厂函…

华为OD机试题【有效子字符串】用 C++ 进行编码 (2023.Q1)

最近更新的博客 华为od 2023 | 什么是华为od,od 薪资待遇,od机试题清单华为OD机试真题大全,用 Python 解华为机试题 | 机试宝典【华为OD机试】全流程解析+经验分享,题型分享,防作弊指南华为od机试,独家整理 已参加机试人员的实战技巧文章目录 最近更新的博客使用说明有效子…

如何使用New Bing的ChatGPT聊天机器人

New Bing是微软推出的一款基于GPT4模型的智能搜索引擎&#xff0c;可以提供更加人性化、交互式和多样化的搜索体验。在中国使用New Bing的ChatGPT聊天机器人需要以下几个步骤&#xff1a; 一、准备工作 1.1 申请微软邮箱 用来登录Edge浏览器和接收来自微软New Bing使用邀请的…

代码随想录算法训练营 || 贪心算法 435 763 56

Day31435. 无重叠区间力扣题目链接给定一个区间的集合&#xff0c;找到需要移除区间的最小数量&#xff0c;使剩余区间互不重叠。注意: 可以认为区间的终点总是大于它的起点。 区间 [1,2] 和 [2,3] 的边界相互“接触”&#xff0c;但没有相互重叠。示例 1:输入: [ [1,2], [2,3]…

TryHackMe-hackerNote

hackerNote 自定义 Web 应用程序&#xff0c;引入用户名枚举、自定义单词列表和基本权限提升漏洞。 端口扫描 循例 nmap Web 80和8080都是一样的页面&#xff0c;并且存在一个登录页面 除此之外还有另一个信息就是它只有一个用户 存在注册功能&#xff0c;我们注册一个用户…

AntDB数据库首个社区版正式发布,携手生态更多可能

3月1日&#xff0c;亚信科技AntDB数据库社区版正式开放免费下载。作为AntDB数据库的首个社区版产品&#xff0c;AntDB-CE&#xff08;Community Edition &#xff09; V7.2.0具有完整、易用、兼容度高的企业级分布式数据库产品特性&#xff0c;提供了详细的在线文档支持&#x…

Kafka基本原理

总述 简介 Kafka是最初由Linkedin公司开发&#xff0c;是一个分布式、支持分区的&#xff08;partition&#xff09;、多副本的&#xff08;replica&#xff09;&#xff0c;基于zookeeper协调的分布式消息系统&#xff0c;它的最大的特性就是可以实时的处理大量数据以满足各…

高清无线手机投屏电脑软件Airserver7全平台兼容

Airserver是一款优质的手机投屏软件&#xff0c;搭配了可调节的分辨率模式&#xff0c;针对不同的网络配置&#xff0c;还专门研发了低数据模式以及硬件加速功能&#xff0c;全方位保证投屏画面的清晰度。除此之外&#xff0c;通过调整画面的色彩变化&#xff0c;还可以增强用户…

OpenWrt介绍及编译基础教程

关于OpenWrt OpenWRT是一个高度模块化、高度自动化的嵌入式Linux系统&#xff0c;拥有强大的网络组件和扩展性&#xff0c;常常被用于工控设备、电话、小型机器人、智能家居、路由器以及VOIP设备中。 同时&#xff0c;它还提供了100多个已编译好的软件&#xff0c;而且数量还在…

SC12B触摸感应芯片评测方案(1)

MM32F0160SC12B Touch Application Evaluation 文章目录MM32F0160SC12B Touch Application EvaluationIntroduction & RequirementHardwareSC12B & SC12B Sample Demo boardMini-F0160 boardSoftwareMCU Software - MM32F0160PC Tool - FreeMASTERSummaryIntroduction …

Jupyter Lab | “丢下R,一起来快乐地糟蹋服务器!”

写作前面 工具永远只是为了帮助自己提升工作效率 —— 沃兹基硕得 所以说&#xff0c;为什么要使用jupyterlab呢&#xff1f;当然是因为基于服务器来处理数据就可以使劲造了&#xff0c;而且深切地感觉到&#xff0c;“R这玩意儿是人用的吗”。 jupyter-lab | mamba安装以及…

【微信小程序】-- 全局配置 -- window - 导航栏(十五)

&#x1f48c; 所属专栏&#xff1a;【微信小程序开发教程】 &#x1f600; 作  者&#xff1a;我是夜阑的狗&#x1f436; &#x1f680; 个人简介&#xff1a;一个正在努力学技术的CV工程师&#xff0c;专注基础和实战分享 &#xff0c;欢迎咨询&#xff01; &…

Thymeleaf -- 视图模块

添加thymeleaf的jar包2. 新建一个Servlet类ViewBaseServletpublicclassViewBaseServletextendsHttpServlet { ​privateTemplateEnginetemplateEngine; ​Overridepublicvoidinit() throwsServletException { ​// 1.获取ServletContext对象ServletContextservletContextthis.g…