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

codeforces 1669F

题意:

alice和bob从数组两边的吃糖果, 数组的值就是糖果重量

要求alice和bob吃的糖果重量必须一样, 输出能吃几个糖果

这题最先想到的是前后缀相加

模拟一个前缀和 和 后缀和

在n/2的位置向前找前缀和 

在n/2的位置向后找后缀和 

找到第一个前缀和==后缀和的下标输出就好

但这种做法有个缺点, 因为前缀和对应相等的后缀和下标不一定是i与n-i的关系, 做起来还是需要用双指针, 那既然用了双指针, 而且前缀和 和 后缀和的访问次数只需要找到第一个(或者说, 最后一个)相等的就行

那为什么不用直接双指针模拟呢?就不需要前缀和这种繁琐的做法了, 还要多模拟一个数组

创建双指针l和r, 创建q和p分别储存alice和bob吃的糖果重量

每当alice吃的糖果小于bob的糖果时alice多吃, 否则bob多吃

每当两者相等时, 更新一下答案即可

void solve()
{cin>>n;vector<ll>v(n+1);for(int i=0;i<n;i++) cin>>v[i];ll l=0,r=n-1;ll q=0,p=0;ans=0;while(l<=r){if(q<p) q+=v[l++];else p+=v[r--];if(p==q) ans=l+(n-1-r);}cout<<ans<<endl;return;
}

http://www.lryc.cn/news/21055.html

相关文章:

  • 高数考试必备知识点
  • [蓝桥杯] 二分与前缀和习题练习
  • SpringMvc中HandlerAdapter组件的作用
  • FreeRTOS优先级翻转
  • 服务器部署—部署springboot之Linux服务器安装jdk和tomcat【建议收藏】
  • golang项目----家庭收支记账软件
  • 中国LNG市场投资机会研究
  • Elasticsearch:索引数据是如何完成的
  • 处理器管理
  • 跟着我从零开始入门FPGA(一周入门系列)第五
  • 【第42天】Arrays.sort 与 Collections.sort 应用 | 整形数组与集合的排序
  • LeetCode第334场周赛
  • 基于深度学习的三维重建网络PatchMatchNet(三):PatchMatchNet配置及代码主要运行流程
  • 【一天一门编程语言】设计一门编程语言,给出基础语法代码示例,SDK设计。
  • ubuntu 下 python 安装 venv
  • HTML#1快速入门
  • 【MySQL】事务隔离级别是怎么实现的?
  • JSP网上书店系统用myeclipse定制开发mysql数据库B/S模式java编程计算机网页
  • 配置 Haproxy 负载均衡群集
  • 计算机网络笔记 | 第一章:计算机网络概述(1.1-1.4小节知识点整理)
  • Flutter3引用原生播放器-Android篇
  • SerenityOS 操作系统类 Unix 操作系统
  • Bean作用域和生命周期
  • STM32笔记
  • 【论文阅读】基于LevelDB的分布式数据库研究
  • JavaScript高级 Iterator Generator
  • 数字IC手撕代码--乐鑫科技(次小值与次小值出现的次数)
  • JavaScript DOM和BOM
  • JUC并发编程(二)
  • Python控制CANoe使能TestCase