”工欲善其事,必先利其器。“—孔子《论语.录灵公》
首页 > 编程 > k乘法操作后的最终数组状态i

k乘法操作后的最终数组状态i

发布于2025-02-04
浏览:216

3264。 k乘法操作后的最终数组状态i Final Array State After K Multiplication Operations I [2

您获得了一个整数数组,一个整数K和一个整数乘数。

您需要在NUMS上执行K操作。在每个操作中:

在数字中找到最小值x。如果最小值有多个出现,请选择出现

的一个。

用x *乘数替换所选的最小值x 执行所有k操作

nums = [2,1,3,5,6],k = 5,乘数= 2

    [2
  • 解释:
  • |操作|结果|
|-------------------|-----------------|

|操作1 | [2,2,3,5,6] | |操作2 | [4、2、3、5、6] | |操作3 | [4,4,3,5,6] |

|操作4 | [4、4、6、5、6] |

|操作5 | [8、4、6、5、6] | [2

    输入:
  • nums = [1,2],k = 3,乘数= 4
  • [16,8]
  • 解释:
  • |操作|结果|
  • |-------------------|-----------------|
|操作1 | [2,2,3,5,6] |

|操作2 | [4、2、3、5、6] |
|操作3 | [4,4,3,5,6] |
|操作4 | [4、4、6、5、6] |
|操作5 | [8、4、6、5、6] |
[2

1

1

    1 暗示:
  • 在优先队列中维护排序的对(nums [index],index)。
  • 模拟操作k次。
  • 解决方案:


我们需要按照问题语句中所述实施操作。关键步骤是在数组中找到最小值,将其替换为乘以给定乘数的值,然后重复此过程k次。

鉴于我们需要选择最小值的第一次出现并替换它,因此我们可以通过跟踪每个操作期间最小值的索引来解决此问题。 PHP实现将使用优先级队列(Min-Heap)进行有效检索和更新每个操作期间的最小值。
让我们在php中实现此解决方案:
3264。 k乘法操作后的最终数组状态i

解释:

  • initialization
  • :循环k次,因为您需要执行k操作。
  • 查找最小值
迭代数字,以找到最小的值及其

首先出现索引

  1. 乘以最小值
  2. 用当前值和乘法器的乘积替换已确定索引的值。

重复

重复上述k迭代的步骤。

返回最终数组


  1. 测试输出 为提供的测试用例:
  2. 测试案例1: 输入:
    • ; $ k = 5; $乘数= 2;
    • 输出:
  3. 输出:[8,4,6,5,6] 测试案例2:
    • 输入:
  4. $ nums = [1,2]; $ k = 3; $乘数= 4;
  5. 输出:
    • 输出:[16,8]
    复杂
  6. [2
      对于每个K操作,在数组中找到最小值需要O(n)。
    • ,其中
    • 是阵列的大小。
[2

解决方案使用

此解决方案遵守约束,并为所有测试用例提供预期结果。 [2

如果您发现此系列有帮助,请考虑在Github上给

如果您想要这样的更多有用的内容,请随时关注我:
$nums = [2, 1, 3, 5, 6];
$k = 5;
$multiplier = 2;
[2 [2


版本声明 本文转载于:https://dev.to/mdarifulhaque/3264-final-array-state-after-k-multiplication-operations-i-4l5b?1如有侵犯,请联系[email protected]删除
最新教程 更多>
  • 如何在Java字符串中有效替换多个子字符串?
    如何在Java字符串中有效替换多个子字符串?
    在java 中有效地替换多个substring,需要在需要替换一个字符串中的多个substring的情况下,很容易求助于重复应用字符串的刺激力量。 However, this can be inefficient for large strings or when working with nu...
    编程 发布于2025-07-17
  • 在Ubuntu/linux上安装mysql-python时,如何修复\“ mysql_config \”错误?
    在Ubuntu/linux上安装mysql-python时,如何修复\“ mysql_config \”错误?
    mysql-python安装错误:“ mysql_config找不到”“ 由于缺少MySQL开发库而出现此错误。解决此问题,建议在Ubuntu上使用该分发的存储库。使用以下命令安装Python-MysqldB: sudo apt-get安装python-mysqldb sudo pip in...
    编程 发布于2025-07-17
  • 如何使用node-mysql在单个查询中执行多个SQL语句?
    如何使用node-mysql在单个查询中执行多个SQL语句?
    Multi-Statement Query Support in Node-MySQLIn Node.js, the question arises when executing multiple SQL statements in a single query using the node-mys...
    编程 发布于2025-07-17
  • `console.log`显示修改后对象值异常的原因
    `console.log`显示修改后对象值异常的原因
    foo = [{id:1},{id:2},{id:3},{id:4},{id:id:5},],]; console.log('foo1',foo,foo.length); foo.splice(2,1); console.log('foo2', foo, foo....
    编程 发布于2025-07-17
  • 我可以将加密从McRypt迁移到OpenSSL,并使用OpenSSL迁移MCRYPT加密数据?
    我可以将加密从McRypt迁移到OpenSSL,并使用OpenSSL迁移MCRYPT加密数据?
    将我的加密库从mcrypt升级到openssl 问题:是否可以将我的加密库从McRypt升级到OpenSSL?如果是这样,如何?答案:是的,可以将您的Encryption库从McRypt升级到OpenSSL。可以使用openssl。附加说明: [openssl_decrypt()函数要求iv参...
    编程 发布于2025-07-17
  • CSS强类型语言解析
    CSS强类型语言解析
    您可以通过其强度或弱输入的方式对编程语言进行分类的方式之一。在这里,“键入”意味着是否在编译时已知变量。一个例子是一个场景,将整数(1)添加到包含整数(“ 1”)的字符串: result = 1 "1";包含整数的字符串可能是由带有许多运动部件的复杂逻辑套件无意间生成的。它也可以是故意从单个真理...
    编程 发布于2025-07-17
  • 编译器报错“usr/bin/ld: cannot find -l”解决方法
    编译器报错“usr/bin/ld: cannot find -l”解决方法
    错误:“ usr/bin/ld:找不到-l “ 此错误表明链接器在链接您的可执行文件时无法找到指定的库。为了解决此问题,我们将深入研究如何指定库路径并将链接引导到正确位置的详细信息。添加库搜索路径的一个可能的原因是,此错误是您的makefile中缺少库搜索路径。要解决它,您可以在链接器命令中添加...
    编程 发布于2025-07-17
  • 如何处理PHP文件系统功能中的UTF-8文件名?
    如何处理PHP文件系统功能中的UTF-8文件名?
    在PHP的Filesystem functions中处理UTF-8 FileNames 在使用PHP的MKDIR函数中含有UTF-8字符的文件很多flusf-8字符时,您可能会在Windows Explorer中遇到comploreer grounder grounder grounder gro...
    编程 发布于2025-07-17
  • 找到最大计数时,如何解决mySQL中的“组函数\”错误的“无效使用”?
    找到最大计数时,如何解决mySQL中的“组函数\”错误的“无效使用”?
    如何在mySQL中使用mySql 检索最大计数,您可能会遇到一个问题,您可能会在尝试使用以下命令:理解错误正确找到由名称列分组的值的最大计数,请使用以下修改后的查询: 计数(*)为c 来自EMP1 按名称组 c desc订购 限制1 查询说明 select语句提取名称列和每个名称...
    编程 发布于2025-07-17
  • Async Void vs. Async Task在ASP.NET中:为什么Async Void方法有时会抛出异常?
    Async Void vs. Async Task在ASP.NET中:为什么Async Void方法有时会抛出异常?
    在ASP.NET async void void async void void void void void的设计无需返回asynchroncon而无需返回任务对象。他们在执行过程中增加未偿还操作的计数,并在完成后减少。在某些情况下,这种行为可能是有益的,例如未期望或明确预期操作结果的火灾和...
    编程 发布于2025-07-17
  • 如何在鼠标单击时编程选择DIV中的所有文本?
    如何在鼠标单击时编程选择DIV中的所有文本?
    在鼠标上选择div文本单击带有文本内容,用户如何使用单个鼠标单击单击div中的整个文本?这允许用户轻松拖放所选的文本或直接复制它。 在单个鼠标上单击的div元素中选择文本,您可以使用以下Javascript函数: function selecttext(canduterid){ if(do...
    编程 发布于2025-07-17
  • Java是否允许多种返回类型:仔细研究通用方法?
    Java是否允许多种返回类型:仔细研究通用方法?
    在Java中的多个返回类型:一种误解类型:在Java编程中揭示,在Java编程中,Peculiar方法签名可能会出现,可能会出现,使开发人员陷入困境,使开发人员陷入困境。 getResult(string s); ,其中foo是自定义类。该方法声明似乎拥有两种返回类型:列表和E。但这确实是如此吗...
    编程 发布于2025-07-17
  • 在Python中如何创建动态变量?
    在Python中如何创建动态变量?
    在Python 中,动态创建变量的功能可以是一种强大的工具,尤其是在使用复杂的数据结构或算法时,Dynamic Variable Creation的动态变量创建。 Python提供了几种创造性的方法来实现这一目标。利用dictionaries 一种有效的方法是利用字典。字典允许您动态创建密钥并分...
    编程 发布于2025-07-17
  • 在程序退出之前,我需要在C ++中明确删除堆的堆分配吗?
    在程序退出之前,我需要在C ++中明确删除堆的堆分配吗?
    在C中的显式删除 在C中的动态内存分配时,开发人员通常会想知道是否有必要在heap-procal extrable exit exit上进行手动调用“ delete”操作员,但开发人员通常会想知道是否需要手动调用“ delete”操作员。本文深入研究了这个主题。 在C主函数中,使用了动态分配变量(H...
    编程 发布于2025-07-17
  • 在Java中使用for-to-loop和迭代器进行收集遍历之间是否存在性能差异?
    在Java中使用for-to-loop和迭代器进行收集遍历之间是否存在性能差异?
    For Each Loop vs. Iterator: Efficiency in Collection TraversalIntroductionWhen traversing a collection in Java, the choice arises between using a for-...
    编程 发布于2025-07-17

免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。

Copyright© 2022 湘ICP备2022001581号-3