[Python]K小姐经营着一家蛋糕店,她的蛋糕店有 n 种口味的蛋糕。这 n 种口味的蛋糕在 A 工厂和 B 工厂都有生产。

问题来源:【秋招突围】2024届秋招-京东笔试题-第三套_牛客网

问题描述

K小姐经营着一家蛋糕店,她的蛋糕店有 n种口味的蛋糕。这 n 种口味的蛋糕在 A 工厂和 B 工厂都有生产。

对于每种口味的蛋糕,如果 A 工厂生产的口感值为 AiA_iAi​,价格为 CiC_iCi​;B 工厂生产的口感值为 BiB_iBi​,价格为 DiD_iDi​。K小姐会比较两个工厂生产的同一口味蛋糕,如果 Ai>BiA_i > B_iAi​>Bi​ 且 Ci<DiC_i < D_iCi​<Di​,那么她会选择从 A 工厂进货这种口味的蛋糕;如果 Bi>AiB_i > A_iBi​>Ai​ 且 Di<CiD_i < C_iDi​<Ci​,那么她会选择从 B 工厂进货这种口味的蛋糕;如果两个工厂生产的蛋糕口感值和价格都相同,或者一个工厂口感值更高但价格也更高,那么K小姐就不会选择进货这种口味的蛋糕。

现在给定 n 种口味蛋糕在两个工厂的口感值和价格,请问K小姐最终会选择进货多少种口味的蛋糕?

输入格式

第一行输入一个整数 n,表示蛋糕的口味数量。

第二行输入 n 个整数,分别表示 A1,A2,…,AnA_1, A_2, \dots, A_nA1​,A2​,…,An​,即 A 工厂生产的 n 种口味蛋糕的口感值。

第三行输入 n 个整数,分别表示 B1,B2,…,BnB_1, B_2, \dots, B_nB1​,B2​,…,Bn​,即 B 工厂生产的 n 种口味蛋糕的口感值。

第四行输入 n 个整数,分别表示 C1,C2,…,CnC_1, C_2, \dots, C_nC1​,C2​,…,Cn​,即 A 工厂生产的 n 种口味蛋糕的价格。

第五行输入 n 个整数,分别表示 D1,D2,…,DnD_1, D_2, \dots, D_nD1​,D2​,…,Dn​,即 B 工厂生产的 n 种口味蛋糕的价格。

输出格式

输出一个整数,表示K小姐最终选择进货的蛋糕口味数量。

代码详细分析

输入部分

  • n = int(input()):这行代码首先从用户那里获取一个整数输入,并将其赋值给变量 n。不过,在后续的代码中,并没有直接使用到这个 n,可能是代码编写过程中存在部分未完成或者多余的输入获取操作。
  • lis = []:初始化一个空列表 lis,用于后续存储输入的数据。
  • 接下来的循环:
for i in range(0, 4):lis.append(list(map(int, list(input().split()))))

这个循环会执行 4 次,每次从用户那里获取一行以空格分隔的整数输入,先通过 split() 方法将输入的字符串按空格分割成字符串列表,然后通过 map(int,...) 将每个字符串转换为整数,最后再通过 list() 将映射后的可迭代对象转换为列表并添加到 lis 中。这样,lis 最终会包含 4 个子列表,每个子列表存储了一行输入的整数数据。

数据处理与字典创建部分

  • A = dict(zip(lis[0], lis[2])) 和 B = dict(zip(lis[1], lis[3]))
    这里使用了 zip() 函数将 lis 中的特定子列表进行组合,然后通过 dict() 函数将组合后的键值对创建为两个字典 A 和 B。具体来说,A 的键来自 lis[0],值来自 lis[2]B 的键来自 lis[1],值来自 lis[3]

获取字典键列表与计数部分

  • keyA_tast = list(A.keys()); keyB_tast = list(B.keys())
    这两行分别获取字典 A 和 B 的键,并将它们转换为列表形式存储在 keyA_tast 和 keyB_tast 中。
  • 接下来的循环:
count = 0
for i in range(len(keyA_tast)):ATast = keyA_tast[i]; BTast = keyB_tast[i]AValue = A[ATast]; BValue = B[BTast]if ATast > BTast and AValue < BValue or ATast < BTast and AValue > BTast:count += 1

首先初始化一个计数变量 count 为 0。然后通过循环遍历 keyA_tast(由于假设 keyA_tast 和 keyB_tast 长度相同,这里只遍历 keyA_tast 的长度即可同时处理两个字典对应位置的元素)。在每次循环中,获取 A 和 B 字典中对应位置的键(ATast 和 BTast)以及对应的值(AValue 和 BValue)。然后通过条件判断,如果满足 ATast 大于 BTast 且 AValue 小于 BValue,或者 ATast 小于 BTast 且 AValue 大于 BTast 这两种情况之一,就将计数变量 count 加 1。

输出部分

  • print(count):最后输出满足上述条件的元素对的数量。
n = int(input())
lis = []
for i in range(0,4):lis.append(list(map(int,list(input().split()))))
A = dict(zip(lis[0],lis[2]));B = dict(zip(lis[1],lis[3]))
keyA_tast = list(A.keys());keyB_tast = list(B.keys())
count = 0
for i in range(len(keyA_tast)):ATast = keyA_tast[i];BTast = keyB_tast[i]AValue = A[ATast];BValue = B[BTast]if ATast > BTast and AValue < BValue or ATast < BTast and AValue > BTast:count += 1
print(count)

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

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

相关文章

设计模式讲解01-建造者模式(Builder)

1. 概述 建造者模式也称为&#xff1a;生成器模式 定义&#xff1a;建造者模式是一种创建型设计模式&#xff0c;它允许你将创建复杂对象的步骤与表示方式相分离。 解释&#xff1a;建造者模式就是将复杂对象的创建过程拆分成多个简单对象的创建过程&#xff0c;并将这些简单…

【Python ASR 】模型对比 whisper 和 funasr

【Python ASR 】模型对比 模型差异比较大的几段结果最后相关网站 模型 Paraformer-zh&#xff08;离线免费-推荐&#xff09; 语音识别&#xff0c;带时间戳输出&#xff0c;非实时 SenseVoiceSmall&#xff08;离线免费&#xff09; 多种语音理解能力&#xff0c;涵盖了自动语…

Python爬虫抓取三个网站上的英语每日一句

一、引言 大学英语学习需要巩固高中语法&#xff0c;补充四六级词汇&#xff0c;增加英语语感&#xff0c;提升英语的运用能力。学好英语有很多种方法&#xff0c;采用句子来突破英语语法、词汇、口语和听力的方法简单有效&#xff0c;值得提倡。李阳就是采用这种方法来教授英…

PostgreSQL 学习笔记:PostgreSQL 主从复制

PostgreSQL 笔记&#xff1a;PostgreSQL 主从复制 博客地址&#xff1a;TMDOG 的博客 在现代应用程序中&#xff0c;数据库的高可用性和扩展性是至关重要的。PostgreSQL 提供了主从复制功能&#xff0c;可以在多个数据库实例之间复制数据&#xff0c;以实现冗余和负载均衡。本…

[云讷科技]DASA数字孪生机器人概念

DASA数字孪生机器人概念 我们在 虚幻引擎 (UE) 的帮助下在 DASA 中建立了数字孪生机器人概念。 UE 是 Epic Games 开发的 3D 计算机图形游戏引擎&#xff0c;广泛应用于视频游戏、电影和电视。我们在 DASA 中利用强大的 UE 功能来实现外观逼真的数字机器人&#xff0c;并允许与…

探索Python新境界:Buzhug库的神秘面纱

文章目录 探索Python新境界&#xff1a;Buzhug库的神秘面纱第一部分&#xff1a;背景介绍第二部分&#xff1a;Buzhug库是什么&#xff1f;第三部分&#xff1a;如何安装Buzhug库&#xff1f;第四部分&#xff1a;Buzhug库函数使用方法第五部分&#xff1a;Buzhug库使用场景第六…

微信小程序的上拉刷新与下拉刷新

效果图如下&#xff1a; 上拉刷新 与 下拉刷新 代码如下&#xff1a; joked.wxml <scroll-view class"scroll" scroll-y refresher-enabled refresher-default-style"white" bindrefresherrefresh"onRefresh" refresher-triggered&qu…

Java唯一键实现方案

数据唯一性 1、生成UUID1.1 代码中实现1.2 数据库中实现优点缺点 2、数据库递增主键优点 3、数据库递增序列3.1 创建序列3.2 使用序列优点缺点 在Java项目开发中&#xff0c;对数据的唯一性要求&#xff0c;业务数据入库的时候保持单表只有一条记录&#xff0c;因此对记录中要求…

《向量数据库指南》——BGE-M3:引领多模态RAG系统新风尚!

BGE-M3 BGE-M3 是一个多功能的 Embedding 模型,能够处理多种语言的文本,并支持不同的粒度级别。例如,您可以处理短句,也可以处理长达 8192 个 Token 的长文档。这个 Embedding 模型还能够输出两种不同的向量类型:稠密向量(Dense embedding)和稀疏向量(Sparse embeddin…

在Ubuntu上安装TensorFlow与Keras

文章目录 1. 查看系统和Python版本信息1.1 查看Ubuntu版本信息1.2 查看Python版本信息 2. 安装pip2.1 下载get-pip.py2.2 运行get-pip.py2.3 查看pip版本 3. 安装Jupyter Notebook3.1 安装Jupyter Notebook3.2 运行Jupyter Notebook3.3 安装jupyter-core3.4 配置Jupyter Notebo…

kubesphere jenkins自动重定向 http://ks-apiserver:30880/oauth/authorize

问题&#xff1a;登陆kubesphere的jenkins Nodeport IP :Port 46.XXX.XXX.16:30180 自动跳转失败 http://ks-apiserver:30880/oauth/authorize?client_idjenkins&redirect_urihttp://46.XXX.XXX.16:30180/securityRealm/finishLogin&response_typecode&scopeopen…

江协科技STM32学习- P34 I2C通信外设

&#x1f680;write in front&#x1f680; &#x1f50e;大家好&#xff0c;我是黄桃罐头&#xff0c;希望你看完之后&#xff0c;能对你有所帮助&#xff0c;不足请指正&#xff01;共同学习交流 &#x1f381;欢迎各位→点赞&#x1f44d; 收藏⭐️ 留言&#x1f4dd;​…

系统地介绍Qt的QtConcurrent模块

本文使用了AI生成的内容&#xff0c;请注意甄别&#xff01; 本文系统地介绍Qt的QtConcurrent模块&#xff0c;它允许开发者无需使用低级线程原语&#xff08;如互斥锁、读写锁、等待条件或信号量&#xff09;即可编写多线程程序。下面将由浅入深地逐步介绍这一内容&#xff1a…

ctfshow(91,96,97)--PHP特性

Web91 源代码&#xff1a; show_source(__FILE__); include(flag.php); $a$_GET[cmd]; if(preg_match(/^php$/im, $a)){if(preg_match(/^php$/i, $a)){echo hacker;}else{echo $flag;} } else{echo nonononono; }Notice: Undefined index: cmd in /var/www/html/index.php on…

大学生软件测试2024(练习赛)

本人不太会java语法&#xff0c;主要是本专业老师主讲java&#xff0c;所以不得不使用java语言进行编写&#xff0c;不当之处请见谅&#xff01; 背景说一哈&#xff0c;有点摸鱼的成分&#xff0c;主要是期末课设和这个有关&#xff0c;想学着看看&#xff0c;不知道能不能得…

【Arch Linux 上安装 Appium 】

安装 Node.js 和 npm sudo pacman -S nodejs npm安装 Appium sudo npm install -g appium安装 Appium Doctor&#xff08;可选&#xff09; # Appium Doctor 是一个工具&#xff0c;用于检查你的系统是否满足 Appium 运行所需的所有依赖项 sudo npm install -g appium-docto…

研究了100个小绿书十万加之后,我们发现2024小绿书独家秘籍就是:在于“先抄后超,持续出摊,量大管饱”!

小绿书作为今年最大的红利&#xff0c;很多人已经吃到了螃蟹。看——&#xff1a; 今天我们总结了100个10万爆款&#xff0c;我们发现要在这个平台上脱颖而出&#xff0c;找到属于自己的方法尤为重要。在这里分享一个主题——小绿书的秘诀就是“先抄后超&#xff0c;持续出摊”…

SQLark百灵连接——整合项目监控过程

关键词&#xff1a;SQL编写、数据查询、数据导入、达梦数据库、项目管理、信息透明 项目监控背景 作为新手项目经理的我&#xff0c;经常觉得哪儿哪儿都是问题&#xff0c;今天催这个&#xff0c;明天推那个&#xff0c;可就是什么事都推不动&#xff0c;谁都不配合。后来&…

【论文解读】EdgeYOLO:一种边缘实时目标检测器(附论文地址)

论文地址&#xff1a;https://arxiv.org/pdf/2302.07483 这篇文章的标题是《EdgeYOLO: An Edge-Real-Time Object Detector》&#xff0c;由中国北京理工大学的Shihan Liu、Junlin Zha、Jian Sun、Zhuo Li和Gang Wang共同撰写。这篇论文提出了一个基于最新YOLO框架的高效、低复…

github打不开网络问题

当打开github出现超时或者网络不能访问的情况时&#xff0c;我们进行如下方法解决&#xff1a; 1&#xff0c;ping gitbub.com查看域名分析的DNS IP C:\Users\86156>ping github.com 正在 Ping github.com [20.205.243.166] 具有 32 字节的数据: 来自 20.205.243.166 的回复…