Python解题 - CSDN周赛第28期

news2024/9/22 5:33:21

上一期周赛问哥因为在路上,无法参加,但还是抽空登上来看了一下题目。4道题都挺简单的,有点遗憾未能参加。不过即使参加了,手速也未必能挤进前十。

本期也是一样,感觉新增的题目都偏数学类,基本用不到所谓的算法,纯数学模拟就可以。此外还有两道之前考过的题目,直接抄了我以前的代码,纯属送分了。


第一题:小Q的鲜榨柠檬汁

团建活动是大家所想要的。小Q给大家准备了鲜橙汁。现在有n个朋友买回了k瓶饮料,每瓶有l毫升的饮料,同时还买回了c个柠檬,每个柠檬可以切成d片,p克盐。已知每个朋友需要nl毫升的饮料,一片柠檬,以及np克盐。小Q想知道每个朋友最少可以喝多少杯饮料。

输入描述:输入整数n,k,l,c,d,p,nl,np。所有数据小于1000的正整数。

输出描述:所有朋友中最少喝多少杯。

示例:

示例
输入3 4 5 10 8 100 3 1
输出2

分析

题目很啰嗦,参数异常的多,但其实很简单:

  • k 瓶饮料,每瓶 l 毫升,可以做 k*l/nl 杯饮料,向下取整;
  • c 个柠檬,每个柠檬可以切 d 片,可以做 c*d 杯饮料;
  • p 克盐,可以做 p/np 杯饮料,向下取整。

三者取最小值,得到总共最多可以做多少杯饮料,再除以人数 n ,向下取整,就得到每个人可以喝到的饮料数了。

参考代码

n, k, l, c, d, p, nl, np = map(int, input().strip().split())
print(min(k*l//nl, c*d, p//np)//n)

第二题:三而竭

一鼓作气再而衰三而竭。小艺总是喜欢把任务分开做。小艺接到一个任务,任务的总任务量是n。第一天小艺能完成x份任务。第二天能完成x/k。。。。第t天能完成x/(k^(t-1))。小艺想知道自己第一天至少完成多少才能完成最后的任务。

输入描述:第一行输入整数n,k。(1<=n<=1e9,2<=k<=10)

输出描述:输出x的最小值。
示例:

示例
输入59 9
输出

54

分析

以前考过的老题。题目隐藏的限制是每一天可以做完的任务不会是小数,不然连示例也得不到。然后可以使用二分去不断地“试”这个满足要求的左边界,也就是可以完成任务的最小数字。

参考代码

def fun(x, n, k):
    while n > 0 and x > 0:
        n -= x
        x //= k
    return True if n <= 0 else False

n, k = map(int, input().strip().split())
left, right = n//2, n
while left < right:
    mid = left + right >> 1
    if fun(mid, n, k): right = mid
    else: left = mid + 1
print(left)

第三题:隧道逃生

小海豚喜欢打游戏,现在它在操纵游戏人物小C逃脱废弃的隧道,逃生装置在小C的前方 X 米远的位置。但是游戏机只有两个按钮:前进和后退,按前进,小C会前进 m 米,按后退,小C会后退 n 米。小海豚必须设法把小C送到逃生装置上,方能逃离隧道,请你帮帮小海豚,告诉它至少要操作多少次,才能通关。

输入描述:输入三个正整数X、m和n

输出描述:输出一个整数,表示小海豚通关需要操作的次数

示例:

示例
输入5 77 157
输出

73

分析

纯粹模拟。因为题目要求必须要恰好送到 X 的位置,假设小C所在的位置为0,需要前进 a 次,后退 b 次,易得公式:

X = a*m - b*n

但这里的 a 和 b 可以有无数组解,而我们要取 a+b 的值为最小的。于是只需设定:如果小C的位置超过了 X,就选择后退,而一旦他的位置小于 X,就选择前进。除非 m = n ,否则一定可以到达 X 且这样操作的总步数是最少的。由于本题并没有说明如果到达不了该如何输出,所以并不需要特判 m 是否等于 n

参考代码

X, m, n = map(int, input().strip().split())
a = 0
while True:
    b = 0
    d = m * a
    while True:
        t = d - X - n * b
        if t > 0:
            b += 1
        else:
            break
    if t == 0: break
    a += 1
print(a + b)

第四题:收件邮箱

已知字符串str,str表示邮箱的不标准格式。其中”.”会被记录成”dot”,”@”记录成”at”。写一个程序将str转化成可用的邮箱格式。(可用格式中字符串中除了开头结尾所有”dot”,都会被转换,”at”只会被转化一次,开头结尾的不转化)

输入描述:输入字符串str.(1<=strlen(str)<=1000)

输出描述:输出转化后的格式。

示例:

示例一
输入mxyatoxcoderdotcom
输出mxy@oxcoder.com

分析

不用分析了,第6期考过的老题,可以参考我之前写的题解。

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

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

相关文章

Buffer Status Reporting(BSR)

欢迎关注同名微信公众号“modem协议笔记”。 以一个实网中的异常场景开始&#xff0c;大概流程是有UL data要发送&#xff0c;UE触发BSR->no UL grant->SR->no UL grant->trigger RACH->RACH fail->RLF->RRC reestablishment&#xff1a;简单描述就是UE触…

Jmeter压测说明

Jmeter使用说明Jmeter下载安装修改编码UTF-8参数说明Get接口测试创建线程组添加HTTP请求添加结果树添加聚合报告启动POST请求添加HTTP信息头管理器设置参数图片上传mysql压测准备数据添加数据库连接jar配置jdbc添加jdbc requestJmeter下载安装 Jmeter官网下载 要求java 1.8以上…

MACD指标在外汇交易中的另类运用方法

外汇交易中怎么另辟蹊径的使用MACD指标 随着外汇市场的不断发展和变化&#xff0c;交易者们不断探索新的方法和技术指标&#xff0c;以提高自己的交易技巧和赢利能力。其中&#xff0c;MACD指标是广大交易者们喜欢使用的一种技术分析工具&#xff0c;它可以帮助交易者判断价格的…

SQL注入Getshell的奇思妙想(上)

前言 前段时间&#xff0c;hvv和找实习的师傅们也多了起来。而我也不例外&#xff0c;尝试投递了不少简历&#xff0c;结果是积累了大量的面试经验。笔者发现大量的hr面试官都喜欢从SQL注入开始询问&#xff0c;所以留心了一下关于SQL注入的问题的频率。结果非常amazing啊&…

传统企业数字化转型,到底难在哪里?

数字化转型过程中面临最大的挑战和问题是什么&#xff1f;这篇整理了企业在数字化转型过程中普遍面临的9大问题和挑战以及如何解决这些问题&#xff0c;希望能够对各位企业数字化转型有多启发和帮助。 01 企业数字化转型三大现状 在梳理企业数字化转型问题之前&#xff0c;我想…

C++数据结构 —— 二叉搜索树

目录 1.二叉搜索树的基本概念 1.1二叉搜索树的基本特征 2.二叉搜索树的实现 2.1数据的插入(迭代实现) 2.2数据的搜索(迭代实现) 2.3中序遍历(递归实现) 2.4数据的删除(迭代实现) 2.5数据的搜索(递归实现) 2.6数据的插入(递归实现) 2.7数据的删除(递归实现) 2.8类的完…

元宇宙开始告别以资本为主导的野蛮生长,新的竞争格局和态势将形成

欲要成为这样一场洗牌的胜利者&#xff0c;元宇宙的玩家需要真正站在商业的角度&#xff0c;而非资本市场的角度来看待元宇宙&#xff0c;来寻找元宇宙的正确的发展模式和方法。原因在于&#xff0c;在这样一场洗牌过程当中&#xff0c;仅仅只是对于以往以资本为主导的发展模式…

Web自动化测试——selenium篇(二)

文章目录一、浏览器相关操作二、键盘操作三、鼠标操作四、弹窗操作五、下拉框选择六、文件上传七、错误截图一、浏览器相关操作 浏览器窗口大小设置 driver.manage().window().maximize();//窗口最大化 driver.manage().window().minimize();//窗口最小化 driver.manage().wi…

【GD32F427开发板试用】01适配RTX4+调试组件Event Recorder

本篇文章来自极术社区与兆易创新组织的GD32F427开发板评测活动&#xff0c;更多开发板试用活动请关注极术社区网站。作者&#xff1a;汪阳 感谢极术社区和兆易创新组织的开发板试用活动。收到开发板有一周多了&#xff0c;因为工作关系好久没有折腾MDK了&#xff0c;上手浪费的…

教你文本生成图片——stablediffusion

今天来点轻松的话题&#xff0c;带大家玩一个用文字生成图片的模型。相信大家如果关注AIGC领域&#xff0c;对文本生成图片&#xff0c;对Stablefiffusion、DEALL.E应该不陌生。今天给大家介绍的就是基于SD2 finetune出来的一个模型&#xff08;&#xff09;这篇文章不会教大家…

ArcGIS中基于网格实现可视化

1 数据来源介绍 土地利用数据、高程数据、植被指数数据均来源于中国科学院资源环境科学与数据中心&#xff08;https://www.resdc.cn/&#xff09;。 2 数据预处理 我们从中国科学院资源环境科学与数据中心官网上下载下来的土地利用栅格数据是整型的&#xff0c;我们可以利用…

高低温真空磁场探针台T8-EM4的技术指标

锦正茂高低温真空磁场探针台探针台配备4个&#xff08;可选6个或8个&#xff09;拥有高精度位移的探针臂&#xff0c;同时配有高精度电子显微镜&#xff0c;便于微小样品的观察操作。探针可通过直流或者低频交流信号&#xff0c;用来测试芯片、晶圆片、封装器件等&#xff0c;广…

火眼审阅 | 基于NLP和OCR识别技术赋能合同审阅

合同作为确定权利义务的法律文件&#xff0c;贯穿企业内外部活动的所有环节&#xff0c;可见合同数据之于企业是非常重要的数据资产。 合同管理是企业营业中的重要部分&#xff0c;其中合同审核是企业法务的基本工作之一。而对于所有的法务人员一直存在一个问题&#xff1a;合…

Java读取mysql导入的文件时中文字段出现�??的乱码如何解决

今天在写程序时遇到了一个乱码问题&#xff0c;困扰了好久&#xff0c;事情是这样的&#xff0c; 在Mapper层编写了查询语句&#xff0c;然后服务处调用&#xff0c;结果控制器返回一堆乱码 然后查看数据源头处&#xff1a; 由重新更改解码的字符集&#xff0c;在数据库中是正…

算法总结c++

文章目录基本概念时间复杂度空间复杂度基本结构1. 数组前缀和差分数组快慢指针(索引)左右指针&#xff08;索引&#xff09;盛水容器三数之和最长回文子串2. 链表双指针删除链表的倒数第 n 个结点翻转链表递归将两个升序链表合并为一个新的 升序 链表链表翻转3. 散列表twoSum无…

Camtasia2023最新版本新功能及快捷键教程

使用Camtasia&#xff0c;您可以毫不费力地在计算机的显示器上录制专业的活动视频。除了录制视频外&#xff0c;Camtasia还允许您从外部源将高清视频导入到录制中。Camtasia的独特之处在于它可以创建包含可单击链接的交互式视频&#xff0c;以生成适用于教室或工作场所的动态视…

UDS诊断之DTC码构成

DTC(Diagnostic Trouble Code)表示诊断故障码&#xff08;全局唯一&#xff09;&#xff0c;是故障类型的"身份ID"&#xff1b;用于汽车故障时对故障部位及原因的排查。 格式如下&#xff1a; 其中&#xff0c;DTCHighByte、DTCMiddleByte这两个字节表示故障内码&…

nvm控制node版本

安装 nvm 1、下载 nvm 官网安装包&#xff1a; github 选择 nvm-setup.exe 下载 2、安装 1、选择 nvm 安装目录&#xff08;可自定义&#xff09; 2、选择 node 安装目录&#xff08;如有安装过&#xff0c;可以选择以前安装目录&#xff0c;可 cdm 输入 where node 查看原nod…

嵌入式Qt 开发一个音乐播放器

上篇文章&#xff1a;RK3568源码编译与交叉编译环境搭建&#xff0c;进行了OK3568开发板软件开发环境搭建&#xff0c;通过编译RK3568的源码&#xff0c;可以得到Qt开发的交叉编译相关工具。 本篇&#xff0c;就来在搭建好的软件开发中&#xff0c;进行Qt软件的开发测试。由于…

package-lock.json,深度内容

前言 看完本文&#xff0c;你将从整体了解依赖版本锁定原理&#xff0c;package-lock.json 或 yarn.lock 的重要性。首先要从最近接连出现两起有关 npm 安装 package.json 中依赖包&#xff0c;由于依赖包版本更新 bug 造成项目出错问题说起。 事件一&#xff1a;新版本依赖包…