T1 小美的数组询问(15分) - 美团编程题 题解

考试平台: 牛客网

题目类型: 30道单选题(60分)+ 2 道编程题 (15分 + 25分)

考试时间: 2024-03-09 (两小时)

题目描述

小美拿到了一个由正整数组成的数组,但其中有一些元素是未知的(用 0 来表示)。
现在小美想知道,如果那些未知的元素在区间 [l,r] 范围内随机取值的话,数组所有元素之和的最小值和最大值分别是多少?
共有q 次询问。

输入描述:

第一行输入两个正整数 n,q,代表数组大小和询问次数。
第二行输入n个整数 a i a_i ai,其中如果输入的 a i a_i ai 为 0,那么说明 a i a_i ai 是未知的。
接下来的q行,每行输入两个正整数 l,r,代表一次询问。
1 ≤ n , q ≤ 1 0 5 1\leq n,q \leq 10^5 1n,q105
0 ≤ a i ≤ 1 0 9 0 \leq a_i \leq 10^9 0ai109
1 ≤ l ≤ r ≤ 1 0 9 1\leq l \leq r \leq 10^9 1lr109

输出描述:

输出q行,每行输出两个正整数,代表所有元素之和的最小值和最大值。

示例:

输入:
3 2
1 0 3
1 2
4 4输出:
5 6
8 8说明:
只有第二个元素是未知的。
第一次询问,数组最小的和是 1+1=3=5,最大的和是 1+2+3=6。
第二次询问,显然数组的元素和必然为 8。

题解

n, q = map(int, input().split())
a = list(map(int, input().split()))tot = sum(a)
# 0 的个数
zero_cnt = sum([1 for v in a if v == 0])for _ in range(q):l, r = map(int, input().split())# 最小和: 0 都选 l# 最大和: 0 都选 rmin_sum, max_sum = tot + zero_cnt * l, tot + zero_cnt * rprint(min_sum, max_sum)

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

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

相关文章

Draco点云压缩测试

ref:https://github.com/google/dracohttps://codelabs.developers.google.com/codelabs/draco-3d/index.html#6 Draco Draco 是一个用于编码压缩和解压缩 3D 几何网格和点云的库,从而改进 3D 图形的存储和传输该代码支持压缩点、连接信息、纹理坐标、颜…

NTFS安全权限

NTFS是新技术文件系统(New Technology File System)的缩写,是一种用于Windows操作系统的文件系统。NTFS提供了高级的功能和性能,包括文件和目录的权限控制、加密、压缩以及日志等。它被广泛应用于Windows NT、Windows 2000、Windo…

算法训练营day44(补),动态规划12

func max(a, b int) int { if a > b { return a } return b } //300. 最长递增子序列 func lengthOfLIS(nums []int) int { dp : make([]int, len(nums)) for i : range dp { dp[i] 1 } for i : 1; i < len(nums); i { for j : 0; j < i; j { //收集所有子序列 if…

linux中git暂存,提交,上传到github

安装git apt-get updateapt-get install git设置 git config --global user.name "XXX"git config --global user.email "xxxxxx.com"生成ssh key ssh-keygen -t rsa查看id_rsa.pub cat ~/.ssh/id_rsa.pub将id_rsa.pub内容设置到github中 测试是否连接…

Android L (5.0及以上版本) 中如何精准判断当前页面是否位于栈顶

在Android应用程序开发中,了解应用内Activity的状态对于优化用户体验、执行适时的操作至关重要。特别是在多任务环境下,准确判断当前Activity是否位于任务栈顶端,即用户当前正在交互的页面,有助于防止无效操作和资源浪费。尤其是在Android Lollipop(5.0)及其之后版本中,…

ubuntu 运行opencv_sample遇到的问题

首先我遇到的问题就是摄像头连接不上 勾选最后一个 然后是 usb接口问题 点击虚拟机设置 我的是改为 3 就可以啦

谷歌seo外链和内链区别?

什么是外链&#xff1f;外链就是其他网站链接到你的网站&#xff0c;别人的网站提到了你的网站&#xff0c;并愿意放你网站的链接在上面&#xff0c;这就是外链&#xff0c;外链的重点&#xff0c;就在于这是外部网站给你网站的推荐&#xff0c;意味着别人认可你的内容或服务&a…

JL15-80/11电流继电器 过电流瞬时动作 电磁式结构 80A 一开一闭

JL15电流继电器 系列型号 JL15-1.5/11电流继电器JL15-2.5/11电流继电器 JL15-5/11电流继电器JL15-10/11电流继电器 JL15-15/11电流继电器JL15-20/11电流继电器 JL15-30/11电流继电器JL15-40/11电流继电器 JL15-60/11电流继电器JL15-80/11电流继电器 JL15-100/11电流继电器JL15…

关于2024/3/4号的学习总结

今天没有早八&#xff0c;八点之钱起床了&#xff0c;上午背了半小时的单词&#xff0c;然后就在写top100&#xff0c;目前中等和简单写了30题&#xff0c;基本上都没有看题解。我自己也整理下&#xff0c;每一题的思路&#xff0c;这样子&#xff0c;也会让我至少拥有做模板题…

JavaScript代码混淆与防格式化功能详解

在前端开发中&#xff0c;为了增加代码的安全性&#xff0c;防止恶意分析和逆向工程&#xff0c;有时候会采用一些防格式化的技术。这些技术主要通过混淆和难以阅读的方式来防止代码的易读性&#xff0c;提高代码的复杂度&#xff0c;增加攻击者分析的难度。 1. 代码压缩与混淆…

机器学习--循环神经网路(RNN)2

在这篇文章中&#xff0c;我们介绍一下其他的RNN。 一.深层RNN 循环神经网络的架构是可以任意设计的&#xff0c;之前提到的 RNN 只有一个隐藏层&#xff0c;但 RNN 也可以是深层的。比如把 xt 丢进去之后&#xff0c;它可以通过一个隐藏层&#xff0c;再通过第二个隐藏层&am…

JavaEE企业开发新技术

目录 2.1 Class对象基本概念 1、概念 2.2 Class对象的获取方式 2.3基本数据类型的Class对象 1、概念 2.4 反射的基本概念 概念 2.5 Class对象的基本使用-1 2.6 Class对象的基本使用-2 newInstance()和new()区别&#xff1a; 2.1 Class对象基本概念 1、概念 反射的…

[LeetCode][102]二叉树的层序遍历——遍历结果中每一层明显区分

题目 102. 二叉树的层序遍历 给定二叉树的根节点 root&#xff0c;返回节点值的层序遍历结果。即逐层地&#xff0c;从左到右访问所有节点。 示例 1&#xff1a; 输入&#xff1a;root [3,9,20,null,null,15,7] 输出&#xff1a;[[3],[9,20],[15,7]] 示例 2&#xff1a; 输入…

Java设计模式:建造者模式之经典与流式的三种实现(四)

本文将深入探讨Java中建造者模式的两种实现方式&#xff1a;经典建造者与流式建造者。建造者模式是一种创建型设计模式&#xff0c;它允许你构建复杂对象的步骤分解&#xff0c;使得对象的创建过程更加清晰和灵活。我们将通过示例代码详细解释这两种实现方式&#xff0c;并分析…

Spring Boot 注解教程

Spring Boot 注解教程 在 Spring 和 Spring Boot 的世界里&#xff0c;注解&#xff08;Annotations&#xff09;起着至关重要的作用。它们为开发者提供了声明式编程的能力&#xff0c;大大简化了 Spring 应用的开发过程。在这篇博客中&#xff0c;我们将探讨 Spring Boot 中的…

Redux 与 Vuex:探索它们的设计思想及应用差异

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 &#x1f35a; 蓝桥云课签约作者、上架课程《Vue.js 和 E…

力扣Python方法解析

1.两数之和 给定一个整数数组 nums 和一个整数目标值 target&#xff0c;请你在该数组中找出 和为目标值 target 的那 两个 整数&#xff0c;并返回它们的数组下标。 你可以假设每种输入只会对应一个答案。但是&#xff0c;数组中同一个元素在答案里不能重复出现。 你可以按…

图像压缩神器:使用wxPython和Pillow快速压缩JPEG文件

导语&#xff1a; 在数字时代&#xff0c;我们经常处理大量的图像文件&#xff0c;无论是个人照片、网络图片还是工作中的设计素材。然而&#xff0c;随着图像数量的增多&#xff0c;存储和传输这些文件可能会成为一个挑战。幸运的是&#xff0c;我们可以利用Python编程和两个强…

【Git】项目源码迁移到另一个gitlab(保留原来提交历史记录)

目录 前情提要迁移方案IDEA远程仓库管理团队其他成员切换gitgit命令操作界面 前情提要 公司原来是自己私有部署的gitlab。有了研发云后就希望将代码推送到研发云的代码仓库上。这时候需要迁移并保留原来提交的历史记录。 迁移方案 登录新的gitlab(代码仓库)新建空白项目获取…

如何搭建selenium自动化测试框架?selenium自动化测试环境搭建(webdriver+Python框架)

一、安装Python 选择Python版本后&#xff0c;进入Python官方网站下载适配机型版本&#xff1a;http://www.python.org/ 二、安装setuptools和pip setuptools下载地址&#xff1a;https://pypi.python.org/pypi/setuptools pip下载地址&#xff1a;https://pypi.python.org/py…