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

网站建设杭州滨江优化设计答案

网站建设杭州滨江,优化设计答案,学技术的培训机构,企业网站建设综合实训心得体会一千字修改两个元素的最小分数 题目描述 给你一个下标从 0 开始的整数数组 nums 。 nums 的 最小 得分是满足 0 < i < j < nums.length 的 |nums[i] - nums[j]| 的最小值。nums的 最大 得分是满足 0 < i < j < nums.length 的 |nums[i] - nums[j]| 的最大值。nu…

修改两个元素的最小分数

题目描述

给你一个下标从 0 开始的整数数组 nums 。

  • nums 的 最小 得分是满足 0 <= i < j < nums.length 的 |nums[i] - nums[j]| 的最小值。
  • nums的 最大 得分是满足 0 <= i < j < nums.length 的 |nums[i] - nums[j]| 的最大值。
  • nums 的分数是 最大 得分与 最小 得分的和。
    我们的目标是最小化 nums 的分数。你 最多 可以修改 nums 中 2 个元素的值。

请你返回修改 nums 中 至多两个 元素的值后,可以得到的 最小分数 。

|x| 表示 x 的绝对值。

样例

样例输入

nums = [1,4,3]
nums = [1,4,7,8,5]

样例输出

0
解释:将 nums[1] 和 nums[2] 的值改为 1 ,nums 变为 [1,1,1] 。|nums[i] - nums[j]| 的值永远为 0 ,所以我们返回 0 + 0 = 0 。

3
解释:
将 nums[0] 和 nums[1] 的值变为 6 ,nums 变为 [6,6,7,8,5] 。
最小得分是 i = 0 且 j = 1 时得到的 |nums[i] - nums[j]| = |6 - 6| = 0 。
最大得分是 i = 3 且 j = 4 时得到的 |nums[i] - nums[j]| = |8 - 5| = 3 。
最大得分与最小得分之和为 3 。这是最优答案。

提示

  • 3<=nums.length<=1053 <= nums.length <= 10^53<=nums.length<=105
  • 1<=nums[i]<=1091 <= nums[i] <= 10^91<=nums[i]<=109

思路

思路题,可以任意改变两个数的值,题中又需要将得分达到最大值,所以区间两个数的最小差值一定为0。而后将数组排序,只需求min(nums[n-1] - nums[2], nums[n-2] - nums[1], nums[n-3] - nums[0]);

代码实现

class Solution {public int minimizeSum(int[] nums) {Arrays.sort(nums);int n = nums.length;return Math.min(Math.min(nums[n-3] - nums[0] , nums[n-2] - nums[1]), nums[n-1] - nums[2]);}
}

最小无法得到的或值

题目描述

给你一个下标从 0 开始的整数数组 nums 。

如果存在一些整数满足 0 <= index1 < index2 < … < indexk < nums.length ,得到 nums[index1] | nums[index2] | … | nums[indexk] = x ,那么我们说 x 是 可表达的 。换言之,如果一个整数能由 nums 的某个子序列的或运算得到,那么它就是可表达的。

请你返回 nums 不可表达的 最小非零整数 。

样例

样例输入

nums = [2,1]
nums = [5,3,2]

样例输出

4
解释:1 和 2 已经在数组中,因为 nums[0] | nums[1] = 2 | 1 = 3 ,所以 3 是可表达的。由于 4 是不可表达的,所以我们返回 4 。

1
解释:1 是最小不可表达的数字。

提示

  • 1<=nums.length<=1051 <= nums.length <= 10^51<=nums.length<=105
  • 1<=nums[i]<=1091 <= nums[i] <= 10^91<=nums[i]<=109

思路

同样还是思维题,因为需要最小nums数组不能表达出的数,那该数的二进制形式只能为1000...格式。又因或运算只会变大或者不变,nums不能表达即表示nums中的所有数都不等于该数。

代码实现

class Solution {public int minImpossibleOR(int[] nums) {for(int i = 0; i <= 30; i++){boolean ok = true;// 此处还可以使用set进行优化,但竞赛的时候没写出来for(int num : nums){if(num ==  (1 << i)){ok = false;break;}}if(ok) return 1 << i;}return -1;}
}
http://www.ds6.com.cn/news/77940.html

相关文章:

  • 做网站免责声明百度搜索量怎么查
  • 有没有免费做任务赚钱的网站seo排名工具给您好的建议
  • 摄影网站怎么做数据库免费注册
  • 找手工活带回家做的找工作哪个网站最靠谱网络营销推广策划书
  • 图展网站源码seo快速排名点击
  • 广东省建设工程规范文件网站seo课程培训要多少钱
  • 逆袭做富豪官方网站阿里大数据分析平台
  • 网站建设中 尽情期待百度seo优化
  • 免费的图库网站抚州seo外包
  • 石家庄做网站优化深圳百度国际大厦
  • 阿里云网站方案建设书网络营销运营方案
  • 保定手机网站制作郑州网站seo顾问
  • 教育培训网站制作阿里域名注册网站
  • 网站备案 子域名公司网站制作公司
  • 做网站用lunx今日百度小说排行榜风云榜
  • dw内部网站链接怎么做四年级摘抄一小段新闻
  • 怎么做简易手机网站最新seo网站优化教程
  • 邀人做任务比较好的发布网站近期热点新闻事件
  • 桐城网站定制市场营销策划方案3000字
  • 销售网站怎么做的镇江搜索优化技巧
  • 怎么做论坛的网站进入百度首页官网
  • wordpress语言更改手机端关键词排名优化
  • 个人养老金制度9月底前亮相长春百度seo公司
  • 可信赖的常州网站建设seo查询爱站网
  • 设计logo网站免费国外上海搜索关键词排名
  • 泰州 做网站seo技术自学
  • 深圳网站制作招聘全国免费发布广告信息平台
  • 快速搭建网站教程厦门人才网个人登录
  • 广州做营销型网站百度投诉中心电话24个小时
  • 织梦中英文网站模板怎样做网站平台