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

linux 做网站安全生产规章制度建筑公司网站

linux 做网站,安全生产规章制度建筑公司网站,品牌型网站制作哪,wordpress首页制作字母板上的路径 题目描述 我们从一块字母板上的位置 (0, 0) 出发,该坐标对应的字符为 board[0][0]。 在本题里,字母板为board [“abcde”, “fghij”, “klmno”, “pqrst”, “uvwxy”, “z”],如下所示。 我们可以按下面的指令规则行动…

字母板上的路径

题目描述

我们从一块字母板上的位置 (0, 0) 出发,该坐标对应的字符为 board[0][0]。

在本题里,字母板为board = [“abcde”, “fghij”, “klmno”, “pqrst”, “uvwxy”, “z”],如下所示。

在这里插入图片描述

我们可以按下面的指令规则行动:

如果方格存在,‘U’ 意味着将我们的位置上移一行;
如果方格存在,‘D’ 意味着将我们的位置下移一行;
如果方格存在,‘L’ 意味着将我们的位置左移一列;
如果方格存在,‘R’ 意味着将我们的位置右移一列;
‘!’ 会把在我们当前位置 (r, c) 的字符 board[r][c] 添加到答案中。
(注意,字母板上只存在有字母的位置。)

返回指令序列,用最小的行动次数让答案和目标 target 相同。你可以返回任何达成目标的路径。

样例

样例输入

target = “leet”
target = “code”

样例输出

“DDR!UURRR!!DDD!”
“RR!DDRR!UUL!R!”

提示

  • 1 <= target.length <= 100
  • target 仅含有小写英文字母。

思路

模拟题,但是有些细节需要注意,因为Z的特殊性,L的优先级要大于D, U的优先级需要大于R

代码实现

class Solution {public String alphabetBoardPath(String target) {String ans = "";int i = 0, j = 0;char[] arr = target.toCharArray();for(char ch : arr){int row = (ch - 'a') / 5 , col = (ch - 'a') % 5;while(col < j){j--;ans += "L";}while(row > i){i++;ans += "D";}while(row < i){i--;ans += "U";}while(col > j){j++;ans += 'R';}ans += "!";}return ans;}
}

统计公平数对的数目

题目描述

给你一个下标从 0 开始、长度为 n 的整数数组 nums ,和两个整数 lower 和 upper ,返回 公平数对的数目 。

如果 (i, j) 数对满足以下情况,则认为它是一个 公平数对 :

  • 0 <= i < j < n,且
  • lower <= nums[i] + nums[j] <= upper

样例

样例输入

nums = [0,1,7,4,4,5], lower = 3, upper = 6
nums = [1,7,9,2,5], lower = 11, upper = 11

样例输出

6
解释:共计 6 个公平数对:(0,3)、(0,4)、(0,5)、(1,3)、(1,4) 和 (1,5) 。

1
解释:只有单个公平数对:(2,3) 。

提示

  • 1<=nums.length<=1051 <= nums.length <= 10^51<=nums.length<=105
  • nums.length==nnums.length == nnums.length==n
  • −109<=nums[i]<=109-10^9 <= nums[i] <= 10^9109<=nums[i]<=109
  • −109<=lower<=upper<=109-10^9 <= lower <= upper <= 10^9109<=lower<=upper<=109

思路

被这个0 <= i < j < n坑了一大把,一直没想到其实位置不影响结果,每个数都会被作为nums[i]与nums[j]遍历两次。所以根本不影响。可以直接排序,然后使用二分控制算法时间复杂度在O(nlog2nnlog_2nnlog2n)。看n的范围,只能使用O(nlog2n)的算法。nlog_2n)的算法。nlog2n)的算法。(看到区间查询,就想使用数组数组或者线段树,但这个nums[i] 范围一下子就给我树状数组整超内存了)

代码实现

class Solution {public long countFairPairs(int[] nums, int lower, int upper) {Arrays.sort(nums);long ans = 0;for(int i = 1; i < nums.length; i++){ans += Math.max(0, upper_bound(nums, upper-nums[i], 0, i-1) - lower_bound(nums, lower-nums[i], 0, i-1) + 1);}return ans;}private int upper_bound(int[] nums, int target, int l, int r){while(l <= r){int mid = (l + r) / 2;if(nums[mid] > target) r = mid - 1;else l = mid + 1;}return r;}private int lower_bound(int[] nums, int target, int l, int r){while(l <= r){int mid = (l + r + 1) / 2;if(nums[mid] < target) l = mid + 1; else r = mid - 1;}return l;}
}
http://www.yayakq.cn/news/288442/

相关文章:

  • 网站挂广告网络营销的主要内容有哪些
  • 企业建个网站要多少钱中国建设银行手机银行官网
  • 域名只做邮箱没网站要备案吗舟山公司网站建设
  • 网站做ddns解析余姚网站建设的公司
  • 国外html5做的音乐网站潍坊企业建站系统
  • 使用apmserv本地搭建多个网站网络营销推广专家
  • 长沙专业做网站公司邯郸网站开发公司
  • 北京php培训网站建设html5是什么意思
  • 最新新闻热点事件2023长沙网站优化分析
  • 西安企业建站公司网站地图制作
  • 网站建设基础流程摘要不拦截网站的浏览器
  • 快速建站公司是干嘛的图书馆建设网站注意点
  • 龙泉建设有限公司网站网站换空间怎么换
  • 网站首页被k咋办wordpress段代码
  • 6电商网站建设代理网店怎么开
  • 建设企业网站专业服务手机免费建设网站制作
  • 免费单页网站模板设计模式
  • wordpress建站用什么网站建设服务类型现状
  • ppt做视频的模板下载网站移动网站开发教学大纲
  • 吴江区建设用地申报网站广州我网站制作
  • 如何用wordpress建网站酷站网
  • 网站程序 wap pc 同步奉贤做网站公司
  • 视频网站怎么做怎么修改公司网站图片
  • 陕西省建设厅网站官网中企动力建设网站怎么样
  • 优质的低价网站建设建网站公建网站公司
  • 网站设计平台 动易网站如何提升用户体验
  • 网站建设学校培训班桂林漓江大瀑布酒店
  • 苏州的建筑公司网站营销型网站盈利模式
  • 网站的开发和建设有什么区别做微信广告网站有哪些
  • 公司网站建设推荐动态公司网站设计