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

四合一网站建设sem是什么意思职业

四合一网站建设,sem是什么意思职业,怎么在虚拟主机上建网站,办公室装修设计怎么设计AcWing《蓝桥杯集训每日一题》—— 3956. 截断数组 文章目录AcWing《蓝桥杯集训每日一题》—— 3956. 截断数组一、题目二、解题思路三、代码实现本次博客我是通过Notion软件写的,转md文件可能不太美观,大家可以去我的博客中查看:北天的 BLOG…

AcWing《蓝桥杯集训·每日一题》—— 3956. 截断数组

文章目录

  • AcWing《蓝桥杯集训·每日一题》—— 3956. 截断数组
  • 一、题目
  • 二、解题思路
  • 三、代码实现

本次博客我是通过Notion软件写的,转md文件可能不太美观,大家可以去我的博客中查看:北天的 BLOG,持续更新中,另外这是我创建的编程学习小组频道,想一起学习的朋友可以一起!!!

一、题目

现在,要将该数组从中间截断,得到三个非空子数组。

要求,三个子数组内各元素之和都相等。

请问,共有多少种不同的截断方法?

输入格式

第一行包含整数n。

第二行包含n个整数a1, a2,… . , an。

输出格式

输出一个整数,表示截断方法数量。

数据范围

前六个测试点满足1≤n≤10。

所有测试点满足1≤<n≤10^5,-10000≤a_i≤10000。

输入样例1:

4
1 2 3 3

输出样例1:

1

输入样例2:

5
1 2 3 4 5

输出样例2:

0

输入样例3:

2
0 0

输出样例3:

0

二、解题思路

  1. 首先,需要确定数组的长度是否符合题目中的要求,也就是说,长度是否大于等于3。
  2. 如果数组的长度符合要求,您可以计算出数组的总和,并判断总和是否能够被3整除。
  3. 如果数组的总和可以被3整除,您可以计算出每个子数组的目标和。
  4. 接下来,您可以使用前缀和数组来预处理数组的前缀和。
  5. 然后,您可以遍历前缀和数组,如果当前前缀和等于目标和的两倍,则该点是可能的分割点。
  6. 最后,您可以从第一个可能的分割点开始,计算其他可能的分割点的数量,并将其加入答案。

通过使用前缀和,我们可以在O(n)的时间复杂度内解决此问题。

什么是前缀和?

前缀和是一种数学技巧,用于快速求出一个数组的前缀和。前缀和数组定义为:对于数组a中的每个元素a[i],前缀和数组prefix[i]表示a[0]到a[i]的和。

例如,对于数组a=[1, 2, 3, 4, 5],前缀和数组prefix为[1, 3, 6, 10, 15]。

使用前缀和数组可以在O(1)的时间复杂度内查询数组中某一段元素的和,而不需要重新遍历数组。这在很多题目中,如区间求和,有很多应用。

三、代码实现

def cut(n, nums):# 判断数组元素个数是否小于3,若是则不存在可行解,直接返回0if n < 3:return 0# 求数组元素和s = sum(nums)# 判断数组元素和是否为3的倍数,若不是则不存在可行解,直接返回0if s % 3 != 0:return 0# 将数组元素和除以3,得到每段的平均值avg = s // 3# 初始化cnt数组,用于存储每个前缀的符合要求的数量cnt = [0] * (n + 1)# 初始化presum数组,用于存储每个前缀的元素和presum = [0] * (n + 1)# 枚举每个前缀,计算元素和for i in range(1, n + 1):presum[i] = presum[i - 1] + nums[i - 1]# 枚举每个前缀,判断元素和是否为2倍的平均值for i in range(1, n):if presum[i] == avg * 2:cnt[i] = 1# 枚举每个前缀,累加符合要求的数量for i in range(1, n):cnt[i] += cnt[i - 1]# 初始化结果为0res = 0# 枚举每个前缀,判断元素和是否为平均值for i in range(n - 2):if presum[i + 1] == avg:res += cnt[n - 1] - cnt[i + 1]# 返回结果return resn = int(input().strip())
nums = list(map(int, input().strip().split()))
print(cut(n, nums))
http://www.ds6.com.cn/news/63293.html

相关文章:

  • jsp网站开发工具及语言建设网站制作公司
  • 做汽配网站需要多少钱提交百度一下
  • 微网站开发提供的服务器百度seo软件曝光行者seo
  • wordpress电子商务视频教程石家庄seo优化公司
  • 网站的建设步骤包括马鞍山seo
  • 酒店电子商务网站策划书北京关键词优化服务
  • 小米手机做网站服务器吗温岭网络推广
  • 中国最大的门户网站是产品推广计划方案
  • 凡科建站案例搜索关键词推荐
  • 自己建的网站地址公司网站建设要多少钱
  • 政府网站建设与管理一份完整的活动策划方案
  • 猪八戒网怎么做网站百度推广关键词匹配模式
  • 中南建设的网站推广网站源码
  • 手机下载微信电脑版官方免费下载青岛seo网站关键词优化
  • 合肥专业做网站seo网络推广排名
  • 响应式网站建设哪里有东莞网站推广宣传
  • 网站建设合作合同模板网上推广专员是什么意思
  • 湘潭做网站价格咨询磐石网络黑帽seo培训网
  • 杭州建电商网站多少钱武汉百度推广电话
  • 百度网站怎么做视频教程怎么做好网络推广销售
  • 广州网站维护制作网站运营师
  • 垂直 网站开发程序天津seo推广软件
  • 网站建设表格的属性高质量网站外链平台
  • 最专业的网站建设公司今天北京发生大事了
  • 服装网站建设规划方案收录优美的图片app
  • 手机版网站开发的功能点企业网站seo推广
  • 手游传奇网站999服网络平台推广具体是怎么推广
  • 昆山兼职做网站seo快速排名外包
  • 什么网站可以做网站测速对比aso优化{ }贴吧
  • 汕头市龙湖区疫情最新情况湖南网站seo营销