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

做一普通网站需要多少钱海港经济开发区人才网

做一普通网站需要多少钱,海港经济开发区人才网,网站的栏目和板块,网站排版怎么做的【LetMeFly】2918.数组的最小相等和:if-else 力扣题目链接:https://leetcode.cn/problems/minimum-equal-sum-of-two-arrays-after-replacing-zeros/ 给你两个由正整数和 0 组成的数组 nums1 和 nums2 。 你必须将两个数组中的 所有 0 替换为 严格 正…

【LetMeFly】2918.数组的最小相等和:if-else

力扣题目链接:https://leetcode.cn/problems/minimum-equal-sum-of-two-arrays-after-replacing-zeros/

给你两个由正整数和 0 组成的数组 nums1nums2

你必须将两个数组中的 所有 0 替换为 严格 正整数,并且满足两个数组中所有元素的和 相等

返回 最小 相等和 ,如果无法使两数组相等,则返回 -1

 

示例 1:

输入:nums1 = [3,2,0,1,0], nums2 = [6,5,0]
输出:12
解释:可以按下述方式替换数组中的 0 :
- 用 2 和 4 替换 nums1 中的两个 0 。得到 nums1 = [3,2,2,1,4] 。
- 用 1 替换 nums2 中的一个 0 。得到 nums2 = [6,5,1] 。
两个数组的元素和相等,都等于 12 。可以证明这是可以获得的最小相等和。

示例 2:

输入:nums1 = [2,0,2,0], nums2 = [1,4]
输出:-1
解释:无法使两个数组的和相等。

 

提示:

  • 1 <= nums1.length, nums2.length <= 105
  • 0 <= nums1[i], nums2[i] <= 106

解题方法:讨论

假设 n u m s 1 nums1 nums1的和为 s 1 s1 s1 n u m s 1 nums1 nums1中有 c 1 c1 c1 0 0 0 n u m s 2 nums2 nums2的和以及零的个数分别为 s 2 s2 s2 c 2 c2 c2,则有:

  • s 1 < s 2 + c 2 a n d c 1 = = 0 s1 < s2 + c2 and c1 == 0 s1<s2+c2andc1==0,说明 n u m s 2 nums2 nums2的和至少变为 s 2 + c 2 s2+c2 s2+c2,比 s 1 s1 s1大并且 s 1 s1 s1中没有 0 0 0可以使其和变大,直接返回 − 1 -1 1
  • s 1 + c 1 > s 2 a n d c s = = 0 s1 + c1 > s2 and cs == 0 s1+c1>s2andcs==0,同理,直接返回 − 1 -1 1
  • 否则,返回 m a x ( s 1 + c 1 , s 2 + c 2 ) max(s1 + c1, s2 + c2) max(s1+c1,s2+c2)

时空复杂度分析:

  • 时间复杂度 O ( l e n ( n u m s 1 ) + l e n ( n u m s 2 ) ) O(len(nums1) + len(nums2)) O(len(nums1)+len(nums2))
  • 空间复杂度 O ( 1 ) O(1) O(1)

AC代码

C++
/** @Author: LetMeFly* @Date: 2025-05-10 12:07:54* @LastEditors: LetMeFly.xyz* @LastEditTime: 2025-05-10 19:00:36*/
typedef long long ll;class Solution {
public:long long minSum(vector<int>& nums1, vector<int>& nums2) {ll s1 = 0, s2 = 0;int c1 = 0, c2 = 0;for (int t : nums1) {s1 += t;c1 += t == 0;}for (int t : nums2) {s2 += t;c2 += t == 0;}if (s1 < s2 + c2 && c1 == 0 || s1 + c1 > s2 && c2 == 0) {return -1;}return max(s1 + c1, s2 + c2);}
};
Python
'''
Author: LetMeFly
Date: 2025-05-10 12:07:54
LastEditors: LetMeFly.xyz
LastEditTime: 2025-05-10 19:29:26
'''
from typing import List, Tupleclass Solution:def cal1(self, nums: List[int]) -> Tuple[int, int]:s, c = 0, 0for t in nums:if t:s += telse:c += 1return s, cdef minSum(self, nums1: List[int], nums2: List[int]) -> int:s1, c1 = self.cal1(nums1)s2, c2 = self.cal1(nums2)if s1 < s2 + c2 and c1 == 0 or s1 + c1 > s2 and c2 == 0:return -1return max(s1 + c1, s2 + c2)
Java
/** @Author: LetMeFly* @Date: 2025-05-10 12:07:54* @LastEditors: LetMeFly.xyz* @LastEditTime: 2025-05-10 19:32:19*/
class Solution {public long minSum(int[] nums1, int[] nums2) {long s1 = 0, s2 = 0;int c1 = 0, c2 = 0;for (int t : nums1) {s1 += t;if (t == 0) {c1++;}}for (int t : nums2) {s2 += t;if (t == 0) {c2++;}}if (s1 < s2 + c2 && c1 == 0 || s1 + c1 > s2 && c2 == 0) {return -1;}return Math.max(s1 + c1, s2 + c2);}
}
Go
/** @Author: LetMeFly* @Date: 2025-05-10 12:07:54* @LastEditors: LetMeFly.xyz* @LastEditTime: 2025-05-10 19:38:55*/
package mainfunc cal2918(a []int) (s int64, cnt int64) {for _, t := range a {if (t == 0) {cnt++} else {s += int64(t)}}return
}func minSum(nums1 []int, nums2 []int) int64 {s1, c1 := cal2918(nums1)s2, c2 := cal2918(nums2)if s1 < s2 + c2 && c1 == 0 || s1 + c1 > s2 && c2 == 0 {return -1}return max(s1 + c1, s2 + c2)
}

同步发文于CSDN和我的个人博客,原创不易,转载经作者同意后请附上原文链接哦~

千篇源码题解已开源


文章转载自:

http://npQ2RIn3.yjprj.cn
http://9n9ebJe7.yjprj.cn
http://1EyusUkA.yjprj.cn
http://0ogHHKod.yjprj.cn
http://yl91kPsp.yjprj.cn
http://KWUHvgLr.yjprj.cn
http://FlMdJsDk.yjprj.cn
http://a1WwH9gR.yjprj.cn
http://GKIpQYxc.yjprj.cn
http://H19orFSG.yjprj.cn
http://rGCXRhbC.yjprj.cn
http://IbIxTeRA.yjprj.cn
http://zhNU9vsj.yjprj.cn
http://Ept0pHUN.yjprj.cn
http://t9iRYfYX.yjprj.cn
http://uHRpMUzs.yjprj.cn
http://QcEmWAEi.yjprj.cn
http://ohezxB6Y.yjprj.cn
http://7AGbYvlu.yjprj.cn
http://qJSrAwiO.yjprj.cn
http://O4It2172.yjprj.cn
http://20r0IZOK.yjprj.cn
http://KhmSkOWz.yjprj.cn
http://dCmE7rry.yjprj.cn
http://3Y3Gd3zo.yjprj.cn
http://SfPRcvZc.yjprj.cn
http://03Xmkd7j.yjprj.cn
http://wTra9SZI.yjprj.cn
http://7q2vjiXy.yjprj.cn
http://n30ood8h.yjprj.cn
http://www.dtcms.com/wzjs/605357.html

相关文章:

  • 公司网站建设需求说明书一个链接打开是表白
  • 深圳外贸网站公司达人设计网
  • 苏州网页模板建站asp论坛源码
  • 龙华三网合一网站建设萝卜建站
  • 西安知名网站建设怎么提高网站收录
  • 大气网站特点织梦网站分页问题
  • 自己能否建立公司网站网站推广方法有
  • 网站文章排版wordpress是动态
  • 秦皇岛seo网站推广网站可以免费做吗
  • wordpress柳城是谁企业网站分析与优化
  • 临沂网站制作企业网站建设基本要求
  • 建立网站的好处国产手机做系统下载网站
  • 广州市城乡建设信息中心网站创建企业需要什么条件
  • 深圳工程网站建设想学装修设计在哪里学
  • 杭州网站运营十年乐云seo企业的网站建设怎么记科目
  • 做电商网站是什么网页图片制作
  • 新农村建设网站知乎电商平台如何做推广
  • 网站优化最为重要的内容是做网站需要域名吗
  • studio网站开发mixkitcom素材网站
  • 网站建设工期安排表网站建设 上海网站
  • 网站建设用什么软件比较好怎么组建企业网站
  • 网站策划方案案例wordpress 标签 取消
  • 免费建微网站平台常州全景网站制作
  • 网站怎么做排查修复wordpress怎么上传logo
  • 常州便宜的做网站服务全国建筑工人招工网
  • 网站进度表wordpress自动推送token
  • 南京汽车企业网站建设wordpress关键词优化插件
  • 网站批量上传文章免费咨询妇科
  • 那个网站可以找人做兼职wordpress您找的页面不存在
  • 磐安住房和城乡建设部网站天津设计公司有哪些