当前位置: 首页 > news >正文

CSDN编程题-每日一练(2023-08-14)

CSDN编程题-每日一练(2023-08-14)

  • 一、题目名称:小股炒股
  • 二、题目名称:王子闯闸门
  • 三、题目名称:圆小艺

一、题目名称:小股炒股

时间限制:1000ms内存限制:256M

题目描述:

已知n天后的股票行情,现在已有的本金是m, 规定只能入手一次股票和抛售一次股票。 最大收益是?

输入描述:

第一行输入整数n,m。(1<=n<=1000,1<=m<=10000) 第二行输入n个整数表示某股票单股价格p。(1<=p<=1000)

输出描述:

输出小最大收益

🚩 示例:

✔️ 示例1:

输入
2 4
3 7

输出
8

🔔 解题思路:

这道题目是要计算在n天后的股票行情中,通过一次买入和一次卖出能够获得的最大收益。题目中给出了n天后的股票价格列表和初始本金m。我们需要通过计算来找到最佳的买入和卖出时机,使得收益最大化。

代码如下:

# max(a, b)函数用于比较两个数 a 和 b,返回较大的那个数,使用了三元条件表达式。
def max(a, b):return a if a > b else b#count(m, a, b)函数用于计算一次交易后的利润,给定参数 m(本金)、a(买入价格)、和 b(卖出价格)。它计算可以用初始资金 m 购买的最大单位数 n,然后计算购买了 n 个单位后的剩余资金。函数返回出售购买的单位后得到的总资金。
def count(m, a, b):n = m // a  #计算用来表示投资收益的比例或指标,它表示的是投入的本金与购买价格之间的比值。这个比值可以用来评估投资的效果,以及在卖出资产后,本金相对于初始购买价格的增长或减少情况。return m - n * a + b * n  #计算交易总资金
#
def solution(n, m, plist): p = plist[0] #初始化变量p为列表plist的第一个元素,并将变量s赋值为m。s = mfor i in range(1, n): #通过循环遍历列表plist的剩余元素。如果当前元素大于p,说明可以卖出并获得更高的利润,调用count函数计算利润,并将结果与s进行比较,取较大值。如果当前元素小于等于p,说明无法获得更高的利润,更新p为当前元素。if plist[i] > p:t = count(m, p, plist[i])s = max(t, s)else:p = plist[i]print(s)  #打印输出sdef main():tem_arr = list(map(int, input().split()))  #使用input()函数接收输入的数据,并以空格为分隔符将输入的两个数字保存到tem_arr列表中。n = tem_arr[0] #将tem_arr中的第一个数字赋值给变量nm = tem_arr[1] #将第二个数字赋值给变量mplist = list(map(int, input().split())) #使用input()函数接收输入的数据,并以空格为分隔符将输入的数字保存到plist列表中solution(n, m, plist) # 调用solution函数,传入n、m和plist作为参数if __name__ == "__main__":main()

在这里插入图片描述
在这里插入图片描述

二、题目名称:王子闯闸门

时间限制:1000ms内存限制:256M

题目描述:

波斯王子要去救被贾法尔囚禁的公主,但贾法尔用黑魔法在他面前设置了编号从1到n的n道闸门。从王子的位置到1号闸门需要1秒,从n号闸门到公主所在的位置也需要1秒,从p号闸门到p+1或p-1号闸门都需要1秒。

每过1秒钟,王子都必须决定选择前进一道闸门、后退一道闸门或停在原地这三种动作中的一种。当然,王子不能选择移动到关闭状态的闸门而只能选择开启状态的闸门。在王子做出动作选择后,闸门也可能会有关闭和开启的动作,如果王子做完动作后,其所在的闸门在该秒内的动作是从开启变为关闭则他就会被闸门夹死。

现在给出闸门数量n和m个闸门的动作时刻表,求波斯王子需要多少秒才能救出公主。

输入描述:

第一行给出n和m,接下来的m行每行代表一个闸门关闭的时段,包含三个数字a、b、c代表编号为a的闸门会在第b秒到第c秒之间关闭,其他时间开启。可能会给出同一编号闸门的多个关闭时段,但这些时段不会相交,即如果给出的数字是a、p、q和a、x、y则不可能p<x<q或x<p<y。

输出描述:

波斯王子救出公主所需要的秒数t(t>0)。

🚩示例:

✔️示例1

输入样例:

2 2
1 2 3
2 1 2

输出样例:

6

输入示例解释:
有2道闸门(编号从1到2)。
第1道闸门会在第2秒到第3秒之间关闭,其他时间开启。
第2道闸门会在第1秒到第2秒之间关闭,其他时间开启。

输出示例解释:
波斯王子需要按照以下步骤来救出公主:

移动到1号闸门:1秒
移动到2号闸门:1秒
移动到1号闸门:1秒
移动到2号闸门:1秒
移动到1号闸门:1秒
移动到2号闸门:1秒
所以,总共需要6秒才能救出公主。

🔔 解题思路:

代码如下:

n, m = map(int, input().split())
gates = [0] * (n + 2)
for _ in range(m):a, b, c = map(int, input().split())gates[a] = max(gates[a], c)
res = 0
for i in range(1, n + 1):res += 2if gates[i] > gates[i - 1]:res += 1# 如果王子在公主所在位置,额外增加一秒,但只有在公主所在闸门是关闭的时候才需要增加
if gates[n] > gates[n - 1] or gates[n] == 0:res += 1print(res)

在这里插入图片描述
在这里插入图片描述

三、题目名称:圆小艺

时间限制:1000ms内存限制:256M

题目描述:

最近小艺酱渐渐变成了一个圆滑的形状-球!! 小艺酱开始变得喜欢上球! 小艺酱得到n个同心圆。 小艺酱对着n个同心圆进行染色。 相邻的圆范围内不能有相同的颜色。相隔一层的圆颜色相同。 小艺酱想知道两种颜色最大中最外层圆的那种颜色染了多少?

输入描述:

第一行输入整数n.(1<=n<=1000)表示圆的数量。 第二行输入n个圆的半径。(1<=r<=1000)

输出描述:

输出染色面积,保留小数点后3位。

🚩示例:

✔️示例1
输入
3
1 2 3

输出
18.849

🔔 解题思路:

1、根据输入的n和n个圆的半径,计算出每个圆的面积。
2、按照题目描述的染色规则,计算出两种颜色最外层圆的面积。
3、输出结果,保留小数点后3位。

代码如下:

class Solution:def solution(self, n, arr): #方法solution接收两个参数,分别是整数n和一个列表arrresult = NonePI = 3.141592653589793 #定义了一个常量PI,表示π的值arr.sort(reverse=True) #将输入的数组arr按照降序排列,然后初始化结果变量result为0。result = 0for i in range(0, n, 2): #使用循环遍历数组arr中的元素,步长为2。在每次循环中,计算当前元素和下一个元素所对应的圆的面积差,并将其累加到结果result中。result += (PI * arr[i] * arr[i] - PI * arr[i + 1] * arr[i + 1]) #在每次循环中,计算当前元素和下一个元素所对应的圆的面积差,并将其累加到结果result中。具体计算方法为:使用PI乘以当前元素的平方减去PI乘以下一个元素的平方。return result  #返回结果resultif __name__ == "__main__":n = int(input().strip()) #首先读取输入的整数narr = [int(item) for item in input().strip().split()] #读取输入的列表arr,将其转换为整数类型,并将0追加到列表末尾arr.append(0)  # arr变成n+1项sol = Solution() #创建Solution类的实例solresult = sol.solution(n, arr) #传入n和arr作为参数,并将返回的结果赋值给变量result。print('%.3f' % result)  # 保留3位,不去除末位0

在这里插入图片描述
在这里插入图片描述

相关文章:

CSDN编程题-每日一练(2023-08-14)

CSDN编程题-每日一练&#xff08;2023-08-14&#xff09; 一、题目名称&#xff1a;小股炒股二、题目名称&#xff1a;王子闯闸门三、题目名称&#xff1a;圆小艺 一、题目名称&#xff1a;小股炒股 时间限制&#xff1a;1000ms内存限制&#xff1a;256M 题目描述&#xff1a; …...

【SA8295P 源码分析】69 - Android 侧添加支持 busybox telnetd 服务

【SA8295P 源码分析】69 - Android 侧添加支持 busybox telnetd 服务 一、下载 busybox-1.36.1.tar.bz2 源码包二、编译 busybox 源码三、将编译后的 busybox 打包编入Android 镜像中系列文章汇总见:《【SA8295P 源码分析】00 - 系列文章链接汇总》 本文链接:《【SA8295P 源码…...

OpenCV图像处理——模版匹配和霍夫变换

目录 模版匹配原理实现 霍夫变换霍夫线检测 模版匹配 原理 实现 rescv.matchTemplate(img,template,method)import numpy as np import cv2 as cv import matplotlib.pyplot as pltimgcv.imread(./汪学长的随堂资料/6/模板匹配/lena.jpg) templatecv.imread(./汪学长的随堂资…...

面试官的几句话,差点让我挂在HTTPS上

♥ 前 言 作为软件测试&#xff0c;大家都知道一些常用的网络协议是我们必须要了解和掌握的&#xff0c;比如 HTTP 协议&#xff0c;HTTPS 协议就是两个使用非常广泛的协议&#xff0c;所以也是面试官问的面试的时候问的比较多的两个协议&#xff1b;而且因为这两个协议有相…...

C语言char**,char*,char s[]赋值

目录 前言 赋值方法 char s[]&#xff1a; char* char** 问题 修改字符串常量 前言 char**&#xff0c;char*&#xff0c;char s[]赋值的方式是不同的&#xff0c;当你搞混的时候&#xff0c;系统会报出段错误&#xff08;Segmentation Fault&#xff09;&#xff0c;所…...

一、Kubernetes介绍与集群架构

Kubernetes介绍与集群架构 一、认识容器编排工具 docker machine 主要用于准备docker host现已弃用建议使用docker desktop docker compose Compose 是一个用于定义和运行多容器 Docker 应用程序的工具。使用 Compose&#xff0c;您可以使用 YAML 文件来配置应用程序的服务。…...

基于C#UI Automation自动化测试

步骤 UI Automation 只适用于&#xff0c;标准的win32和 WPF程序 需要添加对UIAutomationClient、 UIAutomationProvider、 UIAutomationTypes的引用 代码 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.D…...

深入了解Linux运维的重要性与最佳实践

Linux作为开源操作系统的代表&#xff0c;在企业级环境中的应用越来越广泛。而在保障Linux系统的正常运行和管理方面&#xff0c;Linux运维显得尤为关键。本文将介绍Linux运维的重要性以及一些最佳实践&#xff0c;帮助读者更好地了解和掌握Linux系统的运维技巧。 首先&#xf…...

90 | Python人工智能篇 —— 深度学习算法 Keras基于卷积神经网络的情感分类

情感分类是自然语言处理(NLP)领域的一个重要任务,它旨在将文本划分为积极、消极或中性等不同情感类别。深度学习技术,尤其是卷积神经网络(CNN),在情感分类任务中取得了显著的成果。Keras作为一个高级的深度学习框架,提供了便捷易用的工具来构建和训练情感分类模型。 文…...

自然语言处理从入门到应用——LangChain:记忆(Memory)-[记忆的类型Ⅲ]

分类目录&#xff1a;《自然语言处理从入门到应用》总目录 对话令牌缓冲存储器ConversationTokenBufferMemory ConversationTokenBufferMemory在内存中保留了最近的一些对话交互&#xff0c;并使用标记长度来确定何时刷新交互&#xff0c;而不是交互数量。 from langchain.me…...

【ARM 嵌入式 编译系列 10.3 -- GNU elfutils 工具小结】

文章目录 什么是 GNU elfutils&#xff1f;GNU elfutils 常用工具有哪些&#xff1f;objcopy 常用参数有哪些&#xff1f;GNU binutils和GNU elfutils区别是什么&#xff1f; 上篇文章&#xff1a;ARM 嵌入式 编译系列 10.2 – 符号表与可执行程序分离详细讲解 什么是 GNU elfu…...

黑马项目一阶段面试 项目介绍篇

我完成了一个外卖项目&#xff0c;名叫苍穹外卖&#xff0c;是跟着黑马程序员的课程来自己动手写的。 项目基本实现了外卖客户端、商家端的后端完整业务。 商家端分为员工管理、文件上传、菜品管理、分类管理、套餐管理、店铺营业状态、订单下单派送等的管理、数据统计等&…...

重构内置类Function原型上的call方法

重构内置类Function原型上的call方法 // > 重构内置类Function原型上的call方法 ~(function () {/*** call: 改变函数中的this指向* params* context 可以不传递&#xff0c;传递必须是引用类型的值&#xff0c;因为后面要给它加 fn 属性**/function myCall(context) {/…...

Nginx之lnmp架构

目录 一.什么是LNMP二.LNMP环境搭建1.Nginx的搭建2.安装php3.安装数据库4.测试Nginx与PHP的连接5.测试PHP连接数据库 一.什么是LNMP LNMP是一套技术的组合&#xff0c;Llinux&#xff0c;Nnginx&#xff0c;Mmysql&#xff0c;Pphp 首先Nginx服务是不能处理动态资源请求&…...

C# 使用FFmpeg.Autogen对byte[]进行编解码

C# 使用FFmpeg.Autogen对byte[]进行编解码&#xff0c;参考&#xff1a;https://github.com/vanjoge/CSharpVideoDemo 入口调用类&#xff1a; using System; using System.IO; using System.Drawing; using System.Runtime.InteropServices; using FFmpeg.AutoGen;namespace F…...

websocket是多线程的嘛

经过测试, onOpen事件的threadId和onMessage的threadId是不一样的&#xff0c;但是onMessage的threadId一直是同一个&#xff0c;就是说收消息的部分是单线程的&#xff0c;收到第一个Message后如果给它sleep较长时间&#xff0c;期间收到第二个&#xff0c;效果是它在排队&am…...

CentOS7.9 禁用22端口,使用其他端口替代

文章目录 业务场景操作步骤修改sshd配置文件修改SELinux开放给ssh使用的端口修改防火墙&#xff0c;开放新端口重启sshd生效 相关知识点介绍sshd服务SELinux服务firewall.service服务 业务场景 我们在某市实施交通信控平台项目&#xff0c;我们申请了一台服务器&#xff0c;用…...

2023国赛 高教社杯数学建模ABCDE题思路汇总分析

文章目录 0 赛题思路1 竞赛信息2 竞赛时间3 建模常见问题类型3.1 分类问题3.2 优化问题3.3 预测问题3.4 评价问题 4 建模资料 0 赛题思路 &#xff08;赛题出来以后第一时间在CSDN分享&#xff09; https://blog.csdn.net/dc_sinor?typeblog 1 竞赛信息 全国大学生数学建模…...

【网络层+数据链路层】深入理解IP协议和MAC帧协议的基本原理

文章目录 前言一、IP协议二、MAC帧协议 1.以太网2.以太网帧&#xff08;MAC帧&#xff09;格式报头3.基于协议讲解局域网转发的原理总结 前言 为什么经常将TCP/IP放在一起呢&#xff1f;这是因为IP层的核心工作就是通过IP地址来定位主机的&#xff0c;具有将一个数据报从A主机…...

银行家算法【学习算法】

银行家算法【学习算法】 前言版权推荐银行家算法7.避免死锁7.1 系统安全状态7.2 利用银行家算法避免死锁 Java算法实现代码结果 最后 前言 2023-8-14 18:18:01 以下内容源自《【学习算法】》 仅供学习交流使用 版权 禁止其他平台发布时删除以下此话 本文首次发布于CSDN平台…...

谷歌浏览器插件

项目中有时候会用到插件 sync-cookie-extension1.0.0&#xff1a;开发环境同步测试 cookie 至 localhost&#xff0c;便于本地请求服务携带 cookie 参考地址&#xff1a;https://juejin.cn/post/7139354571712757767 里面有源码下载下来&#xff0c;加在到扩展即可使用FeHelp…...

C++:std::is_convertible

C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...

MongoDB学习和应用(高效的非关系型数据库)

一丶 MongoDB简介 对于社交类软件的功能&#xff0c;我们需要对它的功能特点进行分析&#xff1a; 数据量会随着用户数增大而增大读多写少价值较低非好友看不到其动态信息地理位置的查询… 针对以上特点进行分析各大存储工具&#xff1a; mysql&#xff1a;关系型数据库&am…...

23-Oracle 23 ai 区块链表(Blockchain Table)

小伙伴有没有在金融强合规的领域中遇见&#xff0c;必须要保持数据不可变&#xff0c;管理员都无法修改和留痕的要求。比如医疗的电子病历中&#xff0c;影像检查检验结果不可篡改行的&#xff0c;药品追溯过程中数据只可插入无法删除的特性需求&#xff1b;登录日志、修改日志…...

vscode(仍待补充)

写于2025 6.9 主包将加入vscode这个更权威的圈子 vscode的基本使用 侧边栏 vscode还能连接ssh&#xff1f; debug时使用的launch文件 1.task.json {"tasks": [{"type": "cppbuild","label": "C/C: gcc.exe 生成活动文件"…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互

引擎版本&#xff1a; 3.8.1 语言&#xff1a; JavaScript/TypeScript、C、Java 环境&#xff1a;Window 参考&#xff1a;Java原生反射机制 您好&#xff0c;我是鹤九日&#xff01; 回顾 在上篇文章中&#xff1a;CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...

【配置 YOLOX 用于按目录分类的图片数据集】

现在的图标点选越来越多&#xff0c;如何一步解决&#xff0c;采用 YOLOX 目标检测模式则可以轻松解决 要在 YOLOX 中使用按目录分类的图片数据集&#xff08;每个目录代表一个类别&#xff0c;目录下是该类别的所有图片&#xff09;&#xff0c;你需要进行以下配置步骤&#x…...

Android15默认授权浮窗权限

我们经常有那种需求&#xff0c;客户需要定制的apk集成在ROM中&#xff0c;并且默认授予其【显示在其他应用的上层】权限&#xff0c;也就是我们常说的浮窗权限&#xff0c;那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...

优选算法第十二讲:队列 + 宽搜 优先级队列

优选算法第十二讲&#xff1a;队列 宽搜 && 优先级队列 1.N叉树的层序遍历2.二叉树的锯齿型层序遍历3.二叉树最大宽度4.在每个树行中找最大值5.优先级队列 -- 最后一块石头的重量6.数据流中的第K大元素7.前K个高频单词8.数据流的中位数 1.N叉树的层序遍历 2.二叉树的锯…...

Java编程之桥接模式

定义 桥接模式&#xff08;Bridge Pattern&#xff09;属于结构型设计模式&#xff0c;它的核心意图是将抽象部分与实现部分分离&#xff0c;使它们可以独立地变化。这种模式通过组合关系来替代继承关系&#xff0c;从而降低了抽象和实现这两个可变维度之间的耦合度。 用例子…...