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

asp.net个人网站青岛网站建设技术外包

asp.net个人网站,青岛网站建设技术外包,吉林seo基础,烟台网站seo目录 题目: 示例: 分析: 代码: 题目: 示例: 分析: 这道题难在阅读理解,题目看得我匪夷所思,错了好多个测试用例才明白题目说的是什么。 我简单翻译一下就是寻找1和…

目录

题目:

示例:

分析:

代码:


题目:

示例:

分析:

这道题难在阅读理解,题目看得我匪夷所思,错了好多个测试用例才明白题目说的是什么。

我简单翻译一下就是寻找1和-1之间0最多的数量,1和-1之间只能有0。

我们可以套两层循环,第一层for循环去寻找1,如果找到了1,那么我们开始在当前下标往左右两边寻找最近的-1,并且统计0的数量,需要注意的是如果先碰到了1,那么表示我们无法落脚,也就不能更新答案,因为题目说的我们只能在-1的地方落脚,并且1到-1之间只能有0。

在结束往右寻找的时候,我们可以把往右寻找的下标赋值给第一层循环的下标,因为我们结束往右寻找的时候,下标所在的位置要么是1要么是-1,赋值给第一层循环可以少遍历几次,不过题目中给的数据量比较小,所以这个小优化是可有可无的。

 具体操作可以参考下面的代码和动图。

代码:

class Solution {
public:int captureForts(vector<int>& forts) {int res=0;int n=forts.size();for(int i=0;i<n;i++){if(forts[i]==1){    //遇到了自己的城堡int t=0,index=i-1;while(index>=0){    //去寻找左边能摧毁的敌人城堡数量if(forts[index]==1) break;  //先遇到自己的城堡则表示左边没有落脚点if(forts[index]==-1){       //当遇到空地就结束寻找并更新答案res=max(res,t);break;}t++;index--;}t=0,index=i+1;while(index<n){     //去寻找右边能摧毁的敌人城堡数量if(forts[index]==1) break;if(forts[index]==-1){res=max(res,t);break;}t++;index++;}//i=index-1;    //小小优化一下,可有可无}}return res;}
};

http://www.hkea.cn/news/408652/

相关文章:

  • 创建网站开发公司互联网推广引流是做什么的
  • 万盛集团网站建设seo网站推广全程实例
  • 做教育的网站需要资质吗网站怎么开发
  • 微网站怎么做滚动中国万网域名注册官网
  • 个人如何免费建网站seo在线优化工具 si
  • 双线主机可以做彩票网站吗网络推广合作协议
  • 做外贸的b2b网站域名批量查询系统
  • 建设网站需要哪些职位网站建设策划书
  • 苏州网站建设哪里好网站点击排名优化
  • 网站建设收费标准策划百度推广关键词越多越好吗
  • 网站怎么做更新吗如何建立网页
  • 国外建设工程招聘信息网站tool站长工具
  • 专业做相册书的网站电商网站建设制作
  • 银川网站开发公司电话东莞网
  • 环境保护局网站管理制度建设百度指数的主要功能有
  • 安装wordpress提示500错误关键词优化的策略有哪些
  • 企业网站建设公司排名深圳高端seo公司助力企业
  • 做网站套餐网站seo
  • 网站上的代码网页怎么做的下载百度软件
  • 网站功能模块建设搜狗推广
  • 网站做推广有用吗网站页面设计
  • 做简报的网站广州搜发网络科技有限公司
  • 南乐县住房和城乡建设局网站制作网站的步骤是什么
  • 金华做网站最专业的公司搜易网提供的技术服务
  • wordpress适合门户网站吗怎么营销自己的产品
  • 常用的网站类型有哪些seo优化专员编辑
  • 网站专题框架怎么做海阳seo排名
  • 手机网站代码下载黄页网站推广服务
  • 做网站前端多少钱在线bt种子
  • wordpress+模版+推荐专业网站seo推广