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

lc1040-移动石子直到连续II

题目描述

  • 在 X 轴上有 n 个不同位置的石子
  • 两端的石子往中间放,放完后,位置不能是两端
  • 放到石子连续为止,求最少次数与最多次数

示例

输入:[7,4,9]
输出:[1,2]
解释:
我们可以移动一次,4 -> 8,游戏结束。
或者,我们可以移动两次 9 -> 5,4 -> 6,游戏结束。
输入:[6,5,4,3,10]
输出:[2,3]
解释:
我们可以移动 3 -> 8,接着是 10 -> 7,游戏结束。
或者,我们可以移动 3 -> 7, 4 -> 8, 5 -> 9,游戏结束。
注意,我们无法进行 10 -> 2 这样的移动来结束游戏,因为这是不合要求的移动。

题解

  • 思路:需要分类讨论
    • 找一段长度为 n 的路径,使得石子最多,记为 m 个
    • m == n 时
    • m == n-1 时
      • 有空隙
      • 无空隙
    • m <= n-2 时
class Solution {
public:vector<int> numMovesStonesII(vector<int>& stones) {vector<int> res(2);int n = stones.size();sort(stones.begin(), stones.end());int m = stones.back() - stones[0] - (n - 1);res[1] = m - min(stones[1] - stones[0] - 1, stones[n - 1] - stones[n - 2] - 1);res[0] = n;for (int i = 0, j = 0; i < n; i ++ ) {while (stones[i] - stones[j] + 1 > n) j ++ ;m = i - j + 1;int r;if (m == n - 1 && stones[i] - stones[j] == i - j) r = 2;else r = n - m;res[0] = min(res[0], r);}return res;}
};
http://www.sczhlp.com/news/149073/

相关文章:

  • 2025年9月29日
  • 网站建设 网站专题 网络推广佛山网站建设的市场
  • 做网站要注册公司么能制作图片的软件
  • 优质的网站自助建站网站在线qq代码
  • 中卫市网站开发制作什么是网站及其制作步骤
  • wordpress 获取当前分类南阳网站排名优化公司
  • 电子商务网站对比分析电子商务网站设计原理实践报告
  • 新会网站建设公司360免费
  • 一个网站多少钱自适应网站源码
  • 网站页面布局图片关键词排名怎么做好
  • 网站开发与软件开发的异同电子商务网站预算模板
  • 品牌销售策划方案宜宾网站优化
  • typecho 企业网站网站推广及建设ppt
  • 画册欣赏网站企业网站的公司和产品信息的介绍与网络营销关系
  • 二手房中介网站建设陕西建设银行缴费网站
  • 竞拍网站模板wordpress是博客
  • 哪些知名网站用wordpress天然气集团有限公司原副总经理
  • 小型企业网站系统织梦网站织梦做英文版的
  • 清远专业网站建设服务桂林漓江船票官网订票
  • 建设代练网站花店网站建设需求
  • 泉州网站开发联系薇镇江个人网站建设
  • ssh jsp做网站提供手机网站建设推荐
  • 网页设计的网网页设计的网站网页设计思路怎么写
  • 物业网站开发网站制作app软件
  • 商城网站公司做网站多少钱大概
  • 备案期间 需要关闭网站wordpress菜单美化
  • 网站开发毕设文献wordpress the_tags
  • 杭州做网站套餐沛县徐州网站开发
  • 淘宝客的api怎么做网站怎样制作手机视频教程
  • 简洁大气企业网站淄博网站制作方案