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

三维前缀和 C++

三维前缀和是指在三维数组中,对于每个位置上的元素,计算该位置及其左上角所有元素的和。

如果我们用一个三维数组prefixSum[x][y][z]来表示三维前缀和,其中x、y和z分别表示三维数组的三个维度上的索引

三维区间求和,考验空间想象能力。
前缀和表达式:
s[i][j][k]=s[i][j][k−1]+s[i][j−1][k]+s[i−1][j][k]−s[i−1][j−1][k]−s[i−1][j][k−1]−s[i][j−1][k−1]+s[i−1][j−1][k−1]+f[i][j][k]

(x1,x2,y1,y2,z1,z2)的区间的和为:

s[x2][y2][z2]−s[x1−1][y2][z2]−s[x2][y1−1][z2]−s[x2][y2][z1−1] + s[x2][y1−1][z1−1] + s[x1−1][y2][z1−1] + s[x1−1][y1−1][z2]−s[x1−1][y1−1][z1−1]


http://www.mrgr.cn/news/16280.html

相关文章:

  • ThermoParser 介绍
  • Atcoder Begining Contest 366
  • vim常用快捷键问答
  • 代码随想录——最长回文子序列(Leetcode 516)
  • 嵌入式全栈开发学习笔记---Linux系统编程(进程间通信)
  • 新进程的加载与创建
  • ZYNQ LWIP TCP学习
  • 四款远程控制分享!你pick哪一款?
  • 美容院拓客营销门店管理小程序渠道进行
  • LeetCode 热题100-9 找到字符串中所有字母异位词
  • 版本管理工具 Git 的下载安装及使用
  • 网络安全 加密编码进制
  • 鸿蒙启动框架配置文件(StartUpTask)
  • 【初阶C++篇】~ C++入门
  • Lua 代码编码规范
  • 一刷代码随想录(图论10)
  • 高级java每日一道面试题-2024年8月31日-框架篇[Spring篇]-你对Spring事务传播机制了解多少?
  • uboot
  • 第 20 章 DOM 进阶
  • Spring Boot 中 AOP 的实用举例