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

四川省建设部网站网站后台开发做什么

四川省建设部网站,网站后台开发做什么,h5模板在线设计,wordpress餐饮获取单值网格的最小操作数 题目描述 给你一个大小为 m x n 的二维整数网格 grid 和一个整数 x 。每一次操作#xff0c;你可以对 grid 中的任一元素 加 x 或 减 x 。 单值网格 是全部元素都相等的网格。 返回使网格化为单值网格所需的 最小 操作数。如果不能#xff0c;返…获取单值网格的最小操作数 题目描述 给你一个大小为 m x n 的二维整数网格 grid 和一个整数 x 。每一次操作你可以对 grid 中的任一元素 加 x 或 减 x 。 单值网格 是全部元素都相等的网格。 返回使网格化为单值网格所需的 最小 操作数。如果不能返回 -1 。 样例 样例输入 grid [[2,4],[6,8]], x 2 grid [[1,5],[2,3]], x 1 grid [[1,2],[3,4]], x 2 样例输出 4 解释可以执行下述操作使所有元素都等于 4 2 加 x 一次。 6 减 x 一次。 8 减 x 两次。 共计 4 次操作。 5 解释可以使所有元素都等于 3 。 -1 解释无法使所有元素相等。 提示 mgrid.lengthm grid.lengthmgrid.lengthngrid[i].lengthn grid[i].lengthngrid[i].length1m,n1051 m, n 10^51m,n1051m∗n1051 m * n 10^51m∗n1051x,grid[i][j]1041 x, grid[i][j] 10^41x,grid[i][j]104 思路 第一个测试用例具误导性因为第一个测试用例中所有数字变为4所需的操作次数与变为6的所需操作次数一样。 最初思路就是通过一定的操作数使所有数都变为中位数。因为中位数的性质所有数变为中位数的所需操作数肯定是最小的。 代码实现 class Solution {public int minOperations(int[][] grid, int x) {ListInteger list new ArrayList();int m grid.length, n grid[0].length;for(int i 0; i m; i){for(int j 0; j n; j){// 所有数组的差值都必须是x的倍数不然无法通过-x改变成为指定值。if(Math.abs(grid[0][0] - grid[i][j]) % x ! 0) return -1;list.add(grid[i][j]);}}int ans 0;Collections.sort(list);int k list.get(n * m / 2);for(int i 0; i list.size(); i){ans Math.abs(list.get(i) - k) / x;}return ans;} }下一个排列 题目描述 整数数组的一个 排列 就是将其所有成员以序列或线性顺序排列。 例如arr [1,2,3] 以下这些都可以视作 arr 的排列[1,2,3]、[1,3,2]、[3,1,2]、[2,3,1] 。 整数数组的 下一个排列 是指其整数的下一个字典序更大的排列。更正式地如果数组的所有排列根据其字典顺序从小到大排列在一个容器中那么数组的 下一个排列 就是在这个有序容器中排在它后面的那个排列。如果不存在下一个更大的排列那么这个数组必须重排为字典序最小的排列即其元素按升序排列。 例如arr [1,2,3] 的下一个排列是 [1,3,2] 。 类似地arr [2,3,1] 的下一个排列是 [3,1,2] 。 而 arr [3,2,1] 的下一个排列是 [1,2,3] 因为 [3,2,1] 不存在一个字典序更大的排列。 给你一个整数数组 nums 找出 nums 的下一个排列。 必须 原地 修改只允许使用额外常数空间。 样例 样例输入 nums [1,2,3] nums [3,2,1] nums [1,1,5] 样例输出 [1,3,2] [1,2,3] [1,5,1] 提示 1 nums.length 1000 nums[i] 100 思路 最初思路从后枚举nums[i]并且维护已经所有已枚举过的最小值如果当前nums[i] 维护的最小值那么交换两个值。并且记录当前交换的下标i,之后在对i1 ~ n-1区间内进行排序即可。主要实现难点就是局部排序可以说很麻烦。 之后看的题解理解咯另外一种思路从后枚举一定是有单调性的在单调的基础上直接反转这个局部区间即可。反转局部区间使用双指针很方便 代码实现 class Solution {public void nextPermutation(int[] nums) {int i nums.length - 2;while(i 0 nums[i] nums[i1]) i--;if(i 0){int j nums.length - 1;while(j 0 nums[i] nums[j]) --j;swap(nums, i, j);}int l i 1, r nums.length - 1;while(l r){swap(nums, l, r);r--;l;}}private void swap(int[] nums, int a, int b){int tmp nums[a];nums[a] nums[b];nums[b] tmp;}private void reverse(int[] nums, int l, int r){while(l r){swap(nums, l, r);r--;l;}} }
http://www.w-s-a.com/news/795511/

相关文章:

  • 高性能网站建设指南北京城乡建设官方网站
  • 企业网站找谁做做淘宝相关网站
  • 商业网站网站建设wordpress关闭前端公共库
  • 打开山东城市建设职业学院网站下载了wordpress后
  • 四川网站建设设计城乡建设网站证件查询系统
  • 企业邮箱哪里买栾城seo整站排名
  • 长沙网站建设zh68网页制作技术实训报告
  • 电商网站的功能手机广告设计与制作软件
  • 做网站前端需要编程基础吗杭州市住房和城乡建设局
  • 网站开发一般学多久网站建设投标方案
  • 北京网站建设报价表制作短视频的软件有哪些
  • 长沙企业网站开发西安建设公司网站
  • 做图的兼职网站网站开发用了哪些知识要点
  • php网站怎么做静态化微慕wordpress插件
  • 电商营业执照wordpress利于seo
  • 那些网站主做玄幻小说营销策略都有哪些方面
  • 同一源代码再建设一个网站建立网站免费
  • 网站更换服务器影响做seo必须有网站吗
  • 免费网页模板网站php微信微网站怎么做
  • 网站的优点和缺点腾讯企点是什么软件
  • 谷歌英文网站推广网页设计好看的网站
  • 衡水网站建设集团各大网站注册
  • 违法网站开发做注册任务网站源码
  • 帝国cms仿站工具淮南寿县
  • 深圳网站建设方案外包手机怎样使用域名访问网站
  • 安陆市建设局网站磐安做网站
  • 梧州市建设局官方网站商旅100网页版
  • 好的宝安网站建设中企动力的网站开发语言
  • flash网站模板怎么用怎么套模板 网站
  • 建设二手商品网站总结石景山安保服务公司电话