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

【算法笔记】一维前缀和

用途:计算某个数组区间的和

实现:另开一个数组,用来存放第i个位置之前所有元素的和(包含第i个元素)

               即:prefix[ i ]=prefix[i-1]+cur[i];

例题:

#include <iostream>
using namespace std;
int main()
{
  // 请在此输入您的代码
  //输入盒子数量
  long long n;
  cin>>n;
  //输入盒子中巧克力数量
  const int N = n+1;
  long long arr[N];
  for(int i=1;i<N;i++){
    cin>>arr[i];
  }
  arr[0]=0;

  //计算前缀和
  long long  prefix[N];
  prefix[0]=0;
  for(long long i=1;i<N;i++){
    prefix[i]=arr[i]+prefix[i-1];
  }
  //计算后缀和
  long long  surfix[N];
  surfix[0]=0;
  
  for (long long  i=1,j=n;j>=1;j--,i++){
    surfix[i]=surfix[i-1]+arr[j];
  }
  //输出结果
  long long  maxresult=0;
  long long  left=1,right=1;
  while(left+right<=n){
    if(prefix[left]<surfix[right]){
      left++;
    }
    else if(prefix[left]>surfix[right]){
      right++;
    }
    else{
      maxresult=max(maxresult,prefix[left]);
      left++;
      right++;
    }
  }

  cout<<maxresult<<endl;

  return 0;
}

注意longlong替换int,防止出现大数据

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.dtcms.com/a/98052.html

相关文章:

  • 二维量子力学:使用Python求解非平凡势
  • 【算法应用】基于粒子群算法PSO求解无人机集群路径规划问题
  • 一个用 C 语言打印出所有三位数水仙花数的程序
  • 蓝桥杯备考------>二维差分板子题之地毯
  • Spring Web MVC(Spring MVC)
  • OGG故障指南:OGG-01163 Bad column length (xxx) specified for column
  • zookeeper详细介绍以及使用
  • 什么是 OLAP 数据库?企业如何选择适合自己的分析工具
  • 软链接解决docker中的conda路径错误:ModuleNotFoundError: No module named ‘Cpython‘
  • 「MethodArgumentTypeMismatchException:前端传递 ‘undefined‘ 导致 Integer 类型转换失败」
  • 向量数据库是什么,它有什么作用?
  • 【计网】数据包
  • 基于Promise链式调用的多层级请求性能优化
  • How to install IBM Semeru JDK 17 on Ubuntu 24.04
  • C++Primer学习(14.1 基本概念)
  • .NET C# TCP网络通信软件开发,Socket上位机开发完整源码下载
  • 【Linux篇】进程入门指南:操作系统中的第一步
  • 基于CentOS7.0系统搭建FTP服务器
  • deepseek v3 0324实现俄罗斯方块游戏 (HTML + Canvas 实现)
  • React状态管理器的应用
  • Python小练习系列 Vol.6:单词搜索(网格回溯)
  • 测试cursor编辑器
  • Java基础 3.29
  • C++11·部分重要语法II
  • android11关机安卓充电的UI定制化
  • 练习题:110
  • Mybatis逆向工程
  • 【商城实战(94)】构建高并发的负载均衡与集群架构
  • RedHatLinux(2025.3.22)
  • 解决 macOS (M1 Pro) 上使用 Vite 进行 Build 打包时 Node 进程内存溢出的问题