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

上海网站建设咨询android studio开发app实例

上海网站建设咨询,android studio开发app实例,长沙哪里有专业做网站,网站网页文案怎么写文章目录题目描述题目链接题目难度——中等方法一#xff1a;排序双指针代码/Python代码/C方法二代码/Python总结题目描述 这是前天周赛的第二题。 统计公平数对的数目 - 给你一个下标从 0 开始、长度为 n 的整数数组 nums #xff0c;和两个整数 lower 和 upper #xff0c… 文章目录题目描述题目链接题目难度——中等方法一排序双指针代码/Python代码/C方法二代码/Python总结题目描述 这是前天周赛的第二题。 统计公平数对的数目 - 给你一个下标从 0 开始、长度为 n 的整数数组 nums 和两个整数 lower 和 upper 返回 公平数对的数目 。 如果 (i, j) 数对满足以下情况则认为它是一个 公平数对  0 i j n且lower nums[i] nums[j] upper 示例 1 输入nums [0,1,7,4,4,5], lower 3, upper 6 输出6 解释共计 6 个公平数对(0,3)、(0,4)、(0,5)、(1,3)、(1,4) 和 (1,5) 。 示例 2 输入nums [1,7,9,2,5], lower 11, upper 11 输出1 解释只有单个公平数对(2,3) 。 提示 1 nums.length 105nums.length n-109  nums[i] 109-109  lower upper 109 题目链接 题目难度——中等 方法一排序双指针 题目说需要统计公平数对的数目而重点在于这个数目一开始可能容易被误导将重点放在数对的下标ij上面仔细想想会发现我们只需要统计不同的数目就行不用在乎具体的下标。所以我们可以先将数组排序然后使用双指针经过两次遍历第一次我们统计一下满足上界upper的数对数目第二次我们统计满足下界lower的数对数目。   具体的第一次遍历时两个指针一前一后让p2n-1p10如果两个数相加大于upper我们就将p2左移一个位置直到两个数相加upper则此时从p1到p2之间的数两两之和都会upper也就有p2-p1个数对满足条件然后再将p1右移继续判断直到p1与p2相遇。第一次遍历时我们只找到了满足上界的下标对所以我们还要一次类似的遍历来减去多算的小于下界的数对。 代码/Python class Solution:def countFairPairs(self, nums: List[int], lower: int, upper: int) - int:nums.sort()n len(nums)res 0p1, p2 0, n - 1while p1 p2:if nums[p1] nums[p2] upper:p2 - 1else:res p2 - p1p1 1p1, p2 0, n - 1while p1 p2:if nums[p1] nums[p2] lower:res - p2 - p1p1 1else:p2 - 1return res代码/C class Solution { public:long long countFairPairs(vectorint nums, int lower, int upper) {long long res 0;int p1, p2, n;sort(nums.begin(), nums.end());n nums.size();p1 0;p2 n - 1;while(p1 p2){if(nums[p1] nums[p2] upper){p2--;}else{res p2 - p1;p1;}}p1 0;p2 n - 1;while(p1 p2){if(nums[p1] nums[p2] lower){res - p2 - p1;p1;}else{p2--;}}return res;} };方法二 前面既然已经排好序了那么我们可以想想是否可以再利用这个有序的性质比如二分查找。利用二分查找来加速找到满足条件的下标对实质上也是方法一的思路。这里贴一个灵茶大佬的题解灵茶大佬 代码/Python class Solution:def countFairPairs(self, nums: List[int], lower: int, upper: int) - int:nums.sort()n len(nums)res 0for i, x in enumerate(nums):r bisect_right(nums, upper - x, 0, i)l bisect_left(nums, lower - x, 0, i)res r - lreturn res总结 方法一时间主要在前面排序上O(NlogN)后面遍历是O(N)所以总的复杂度是(NlogN)空间复杂度 O(1) 方法二在遍历里面有二分所以应该是O(N·logN)空间是O(1)。
http://www.hkea.cn/news/14333171/

相关文章:

  • 广德网站建设网站开发工具简述
  • 网站建设计划书实验总结要怎样创造网站
  • 建设工程竣工备案网站网站开发公司的销售方式
  • 网站建设带后台带微商城化州网站建设
  • 高度重视机关门户网站建设做网站和app需要多久
  • 装修网站建设优缺点学做ppt的网站有哪些
  • 门户网站建设服务收费农业网站电子商务平台建设方案
  • 东莞网站优化软件wordpress主题模版修改
  • 国内做视频的网站有哪些wordpress页面下
  • 精品网站开发公司wordpress 有评论时邮箱设置
  • 网站建设解决恩问题山西省建设厅招标网站
  • 网站建设推广软文案例做网站下载那个数据库好
  • 做门票的网站中国航天空间站最新消息
  • 中国站长之家哪个公司网站设计好
  • 东台做网站莆田专业建站公司
  • 制作网站的难度长沙网站建设论坛
  • 免费的企业建站cmshtml网页设计实验总结
  • 上海设计网站设计做新闻源网站采集站赚钱
  • 企业网站建设的重要性及意义在线阅读 wordpress主题
  • 建筑行业招聘网站推荐php企业网站后台管理系统
  • 爱奇艺的网站是用什么做的免费seo关键词优化方案
  • 用AIDE怎么建设网站网站做管制户外刀具
  • 泰州网站建设设计郑州网站建设设计公司
  • 国外做问卷赚购物券等的网站制作php网站用什么软件
  • 天猫入驻网站建设沈阳网站制作招聘网
  • 免费网站在哪里申请表设计模板网站
  • 网站预订模板怎么做赣州app开发
  • 谷歌自建站和优化济南网站自然优化
  • 上传电影网站源码h5可视化开发工具
  • 唐山制作网站公司搜索引擎中 哪些网站可以获得更好的排名