Python模拟A卷实操题

1.某机械公司生产两种产品。A的单件利润分别是100元,B的单件利润是150元。 每种产品由三种材料构成,现给出每种材料的库存(库存小于100000),求利润最大的生产方案。输入说明:第一行给出生产每件A产品所需要的三种材料数量;第二行给出生产每件B产品所需要的三种材料数量;第三行给出三种材料的库存数量。输出说明:输出利润最大生产方案所对应的每种产品的生产数量(按照产品A、产品B的顺序)和利润最大值,每个数值间用空格隔开。输入样例:3125223046输出样例:21350。

# 导入线性规划求解库
from scipy.optimize import linprog
# 输入数据
# 每件产品A所需的三种材料数量
a_materials = [3, 1, 2]
# 每件产品B所需的三种材料数量
b_materials = [5, 2, 3]
# 三种材料的库存数量
material_stock = [30, 4, 6]
# 产品A和B的利润
profit = [100, 150]
# 将目标函数的系数取负,因为 linprog 默认求解最小值问题
c = [-profit[0], -profit[1]]
# 不等式约束矩阵,表示材料的使用限制
A = [
    [a_materials[0], b_materials[0]],  # 材料一的约束
    [a_materials[1], b_materials[1]],  # 材料二的约束
    [a_materials[2], b_materials[2]]   # 材料三的约束
]
# 不等式约束向量
b = material_stock
# 变量的取值范围,x >= 0
x_bounds = (0, None)
# 求解线性规划问题
res = linprog(c, A_ub=A, b_ub=b, bounds=[x_bounds, x_bounds], method='highs')
# 输出结果
if res.success:
    num_A, num_B = res.x
    max_profit = -res.fun
    print(f"最优生产方案:生产产品A的数量为 {int(num_A)},生产产品B的数量为 {int(num_B)}")
    print(f"最大利润为:{max_profit}")
else:
print("未找到最优解")

(1)输入数据:定义每个产品A和B所需的三种材料数量、材料的库存数量以及产品A和B的利润。

(2)目标函数:linprog默认求解最小化问题,将利润系数取反,求最大化利润。

(3)约束条件:每种材料的使用量不能超过库存量。

(4)求解问题:使用linprog求解最优生产方案。

(5)输出结果:打印最优生产方案和最大利润。

2.输入一个包含N个整数的数组,从中找到连续M个数之积最小的数字组合。输入说明:第一行是两个正整数N(N<200) 和M(M<10);第二行是N个整数(每个数字Ni都是整数,且INil<1000),中间用空格分开。输出说明:最小的M个连续数字积及第一个数在数组中的位置(初始位置按1进行计算)。输入样例:10412345678910输出样例:241。

# 输入处理
n, m = map(int, input().split())
array = list(map(int, input().split()))

# 初始化最小乘积和对应的起始位置
min_product = float('inf')
min_index = -1

# 遍历数组,找出连续 m 个数的最小乘积
for i in range(n - m + 1):
    product = 1
    for j in range(m):
        product *= array[i + j]
    if product < min_product:
        min_product = product
        min_index = i + 1  # 转换为从 1 开始计数

# 输出结果
print(min_product, min_index)

(1)输入处理:首行输入包含两个正整数 N 和 M,表示数组长度和需要寻找的连续元素个数;第二行输入是包含 N 个整数的数组。

(2)最小乘积计算:通过遍历数组,找出所有长度为 M 的连续子数组,并计算它们的乘积,更新最小乘积及其起始位置。

(3)输出结果:输出最小乘积及其起始位置(位置从 1 开始计数)。

3.输入一个包含N个整数的数组,从中找到连续M个数之和最大的数字组合。输入说明:第一行是两个正整数N(N<200)和M(M<20)第二行是N个整数(每个数字Ni都是整数,且Nil<100000),中间用空格分开输出说明:最大的M个连续数字和及第一个数在数组中的位置(初始位置按1进行计算)。输入样例10412345678910输出样例:347。

# 输入处理
n, m = map(int, input().split())
array = list(map(int, input().split()))

# 初始化最大和及其对应的起始位置
max_sum = float('-inf')
max_index = -1

# 遍历数组,找出连续 m 个数的最大和
for i in range(n - m + 1):
    current_sum = sum(array[i:i + m])
    if current_sum > max_sum:
        max_sum = current_sum
        max_index = i + 1  # 转换为从 1 开始计数

# 输出结果
print(max_sum, max_index)

(1)输入处理:第一行输入包含两个正整数 N 和 M,表示数组长度和需要寻找的连续元素个数;第二行输入是包含 N 个整数的数组。

(2)最大和计算:通过遍历数组找出所有长度为 M 的连续子数组,并计算它们的和,更新最大和及其起始位置。

(3)输出结果:输出最大和及其起始位置(位置从 1 开始计数)。

4.给定两个整数N和M(0<n<m<100000),求n到m中满足如下条件的数字,该数字与相邻的前、后数字之和可以被5整除,比如n=4,m=11时,5、10是满足条件的,而6、7、8、9不满足,4和11因为前、后数字不在1到n中,不参与统计。=""输入说明:两个正整数n和m(n<m<100000)=""输出说明:满足要求的数字,如果有多个满足条件的数字,按出现次序输出前3个,如果不足3个,用-1补充。=""输入样例1:14=100=""输出样例1:15=""20=""25=""输入样例2。

# 输入处理
n, m = map(int, input().split())

# 满足条件的数字列表
result = []

# 遍历 n 到 m 范围内的所有数字
for i in range(n, m + 1):
    last_digit = i % 10  # 获取数字的最后一位
    if last_digit != 0 and i % last_digit == 0 and i % 5 == 0:
        result.append(i)

# 如果找到的数字少于 3 个,使用 -1 填充
while len(result) < 3:
    result.append(-1)

# 输出前 3 个满足条件的数字
print(result[:3])

(1)输入处理:输入两个整数 N 和 M,表示范围 [N, M]。

(2)条件检查:遍历范围内的每个数字,检查最后一位不为 0、该数字能被其最后一位整除、并且能被 5 整除的条件。

(3)输出处理:如果找到的数字少于 3 个,则使用 -1 填充,最后输出前 3 个满足条件的数字。

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

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

相关文章

四万字长文SpringBoot、Spring、SpringMVC等相关面试题(注:该篇博客将会持续维护 最新维护时间:2024年11月12日)

&#x1f9f8;本篇博客重在讲解SpringBoot、Spring、SpringMVC等相关面试题&#xff0c;将会实时更新&#xff0c;欢迎大家添加作者文末联系方式交流 &#x1f4dc;JAVA面试题专栏&#xff1a;JAVA崭新面试题——2024版_dream_ready的博客-CSDN博客 &#x1f4dc;作者首页&…

免费HTML模板和CSS样式网站汇总

HTML模板&#xff1a;&#xff08;注意版权&#xff0c;部分不可商用&#xff09; 1、Tooplate&#xff0c;免费HTML模板下载 Download 60 Free HTML Templates for your websitesDownload 60 free HTML website templates or responsive Bootstrap templates instantly from T…

深入理解接口测试:实用指南与最佳实践5.0(二)

✨博客主页&#xff1a; https://blog.csdn.net/m0_63815035?typeblog &#x1f497;《博客内容》&#xff1a;.NET、Java.测试开发、Python、Android、Go、Node、Android前端小程序等相关领域知识 &#x1f4e2;博客专栏&#xff1a; https://blog.csdn.net/m0_63815035/cat…

SpringBoot技术:共享汽车行业的新动力

摘要 随着信息技术在管理上越来越深入而广泛的应用&#xff0c;管理信息系统的实施在技术上已逐步成熟。本文介绍了共享汽车管理系统的开发全过程。通过分析共享汽车管理系统管理的不足&#xff0c;创建了一个计算机管理共享汽车管理系统的方案。文章介绍了共享汽车管理系统的系…

Java Review - 线程池原理源码解析

文章目录 Pre为什么要用线程池线程池的优点&#xff08;1&#xff09;重复利用线程&#xff08;2&#xff09;控制线程的数量 线程池实现原理线程池ThreadPoolExecutor类关系线程池的工作流程任务队列空闲线程的存活时间参数ThreadFactory拒绝策略被拒绝后的任务如何再次执行 向…

昇思大模型平台打卡体验活动:项目4基于MindSpore实现Roberta模型Prompt Tuning

基于MindNLP的Roberta模型Prompt Tuning 本文档介绍了如何基于MindNLP进行Roberta模型的Prompt Tuning&#xff0c;主要用于GLUE基准数据集的微调。本文提供了完整的代码示例以及详细的步骤说明&#xff0c;便于理解和复现实验。 环境配置 在运行此代码前&#xff0c;请确保…

【MySQL】数据库表连接简明解释

未经许可,不得转载。 文章目录 表连接表连接的类型内连接与外连接结合 WHERE 条件交叉连接(cross join)表连接 在关系型数据库中,建模是数据组织的核心难点。数据库建模需要将数据关系理清,构建出适合存储和查询的结构。 所谓“模型”包括实体(entity) 和关系(relati…

离线安装GDAL与MapServer:在银河麒麟V10上的快速指南

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 ✨特色专栏&#xff1a…

17.UE5丰富怪物、结构体、数据表、构造函数

2-19 丰富怪物&#xff0c;结构体、数据表格、构造函数_哔哩哔哩_bilibili 目录 1.结构体和数据表格 2.在构造函数中初始化怪物 3.实现怪物是否游荡 1.结构体和数据表格 创建蓝图&#xff1a;结构体蓝图 在结构体蓝图中添加变量&#xff0c;如下所示&#xff0c;为了实现不…

Kafka 快速入门(一)

1.1安装部署 1.1.1 集群规划 bigdata01bigdata02bigdata03zookeeperzookeeperzookeeperkafkakafkakafka 1.1.2 集群部署 官方下载地址&#xff1a;http://kafka.apache.org/downloads.html 检查三台虚拟机的zk是否启动&#xff1a;zkServer.sh start 默认启动方式 1)解压…

零件图纸的技术要求及标注

1零件的技术要求 零件在加工、检验时的各项技术要求&#xff0c;通常是指表面粗糙度、尺寸公差、形状和位置公差&#xff0c;材料的热处理及表面处理等。 2尺寸公差与配合 1、零件的互换性&定义、作用 在按规定要求大量制造的零件或部件中&#xff0c;任取一个&#xff0…

Python 的 Pygame 库,编写简单的 Flappy Bird 游戏

Pygame 是一个用 Python 编写的开源游戏开发框架&#xff0c;专门用于编写 2D 游戏。它提供了丰富的工具和功能&#xff0c;使得开发者能够快速实现游戏中的图形渲染、声音播放、输入处理和动画效果等功能。Pygame 非常适合初学者和想要快速创建游戏原型的开发者。 Pygame 的主…

【缓存策略】你知道 Cache Aside(缓存旁路)这个缓存策略吗

&#x1f449;博主介绍&#xff1a; 博主从事应用安全和大数据领域&#xff0c;有8年研发经验&#xff0c;5年面试官经验&#xff0c;Java技术专家&#xff0c;WEB架构师&#xff0c;阿里云专家博主&#xff0c;华为云云享专家&#xff0c;51CTO 专家博主 ⛪️ 个人社区&#x…

2024版最新kali linux 新手教程(非常详细)零基础入门到精通,收藏这篇就够了

您是否有兴趣使用 Kali Linux&#xff0c;但不知道从哪里开始&#xff1f;您来对地方了。 Kali Linux 是一个强大的渗透测试和道德黑客工具&#xff0c;提供许多工具和资源。 本 Kali Linux 教程将向您展示如何下载和安装它、解释桌面并强调您应该知道的关键领域。接下来&…

Android JNI 技术入门指南

引言 在Android开发中&#xff0c;Java是一种主要的编程语言&#xff0c;然而&#xff0c;对于一些性能要求较高的场景&#xff08;如音视频处理、图像处理、计算密集型任务等&#xff09;&#xff0c;我们可能需要使用到C或C等语言来编写底层的高效代码。为了实现Java代码与C…

国标GB28181视频平台EasyCVR私有化部署视频平台对接监控录像机NVR时,录像机“资源不足”是什么原因?

EasyCVR视频融合云平台&#xff0c;是TSINGSEE青犀视频“云边端”架构体系中的“云平台”系列之一&#xff0c;是一款针对大中型项目设计的跨区域、网络化、视频监控综合管理系统平台&#xff0c;通过接入视频监控设备及视频平台&#xff0c;实现视频数据的集中汇聚、融合管理、…

HarmonyOS NEXT:模块化项目 ——修改应用图标+启动页等

涉及官方文档 应用配置文件应用/组件级配置图标资源规范 涉及到app.json5配置文件和module.json5配置文件 1、 icon和label的校验。 IDE从5.0.3.800版本开始&#xff0c;不再对module.json5中的icon和label做强制校验&#xff0c;因此module.json5与app.json5只需要选择其一…

产品经理晋级-Axure中继器+动态面板制作美观表格

步骤如下&#xff1a; 将你的表格&#xff08;制作好的表格复制&#xff09; 在工作页面中&#xff0c;添加动态面板&#xff0c;并把刚才复制的表格添加进来

java 面向对象高级

1.final关键字 class Demo{public static void main(String[] args) {final int[] anew int[]{1,2,3};// anew int[]{4,5,6}; 报错a[0]5;//可以&#xff0c;解释了final修饰引用性变量&#xff0c;变量存储的地址不能被改变&#xff0c;但地址所指向的对象的内容可以改变} }什…

计算机网络:运输层 —— 运输层端口号

文章目录 运输层端口号的分类端口号与应用程序的关联应用举例发送方的复用和接收方的分用 运输层端口号的分类 端口号只具有本地意义&#xff0c;即端口号只是为了标识本计算机网络协议栈应用层中的各应用进程。在因特网中不同计算机中的相同端口号是没有关系的&#xff0c;即…