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

中山网站建设制作网站建设厦门同安

中山网站建设制作,网站建设厦门同安,2014 个人网站备案,做网站前景怎么样5057. 截断数组 - AcWing题库 给定一个长度为 n 的正整数数组 a1,a2,…,an 和一个正整数 p。 现在,要将该数组从中间截断,得到两个非空子数组。 我们规定,一个数组的价值等于数组内所有元素之和模 p 的结果。 我们希望,将给定数组…

 5057. 截断数组 - AcWing题库

给定一个长度为 n 的正整数数组 a1,a2,…,an 和一个正整数 p。

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

我们规定,一个数组的价值等于数组内所有元素之和模 p 的结果。

我们希望,将给定数组截断后,得到的两个非空子数组的价值之和尽可能大。

请你输出这两个非空子数组的价值之和的最大可能值。

输入格式

第一行包含两个整数 n 和 p。

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

输出格式

一个整数,表示价值之和的最大可能值。

数据范围

前 33 个测试点满足 2≤n≤10。
所有测试点满足 2≤n≤105,2≤p≤10000,1≤ai≤106。

输入样例1:
4 10
3 4 7 2
输出样例1:
16
输入样例2:
10 12
16 3 24 13 9 8 7 5 12 12
输出样例2:
13

题意是找到一个点x,然后求 1到x 的区间和加上 x+1到n 的区间和最大,所以只需要遍历 x 的位置,就是1到n,然后根据前缀和算法O(1)得到区间和即可

AC ode:

#include<bits/stdc++.h>
using namespace std;
int arr[100010];
long long s[100010];
long long ans = -1;
int p, n;
int main() {cin >> n >> p;for (int i = 1; i <= n; i++) {cin >> arr[i];s[i] = s[i - 1] + arr[i];}for (int i = 1; i <= n - 1; i++) {long long l = s[i] % p;long long r = (s[n] - s[i]) % p;long long x = l + r;ans = max(ans, x);}cout << ans;
}

http://www.yayakq.cn/news/95774/

相关文章:

  • 扬州西区网站建设大连网站建设#选领超科技
  • wordpress设置网站导航免费建站网站排名
  • 东莞企业网站建设多少钱外贸soho
  • 宿松住房和城乡建设局网站建网站要买服务器吗
  • flash网站源码 免费wordpress浏览pdf
  • 大学生一个人做网站天津网站设计方案
  • 网页制作与网站建设实战教程室内设计公司名字大全
  • 17网站一起做网店app建设网站如何弄好几张网站背景
  • 企业门户网站云服务器配置要求公司注册查询入口官网网址
  • 网站经营性备案难不难廊坊网站seo排名
  • 网络宣传网站建设建站北京网站设计制作飞沐
  • wordpress 游客网站自然排名怎么优化
  • 网站开发有哪些语言广告设计与制作包括哪些内容
  • 360极速怎么屏蔽网站上海网站建设 报价
  • 合肥金融网站开发php开发网站优势
  • 亚马逊 网站建设html登录注册页面模板
  • 深圳网站制作电话网站首页大图素材
  • 青岛中英网站建设营销单页网站制作
  • php源码怎么建设网站网架生产公司
  • 做电影网站一年赚多少wordpress安装博客
  • 哈尔滨模版建站公司推荐移动商城app下载
  • 凤岗仿做网站网站赚钱的方式
  • 怎样下载建设银行信用卡网站wordpress浏览器兼容
  • 工程施工人员招聘网站域名服务商网站
  • 网站是否含有seo收录功能网络营销案例分析报告
  • 网站制作哪家最好wordpress 获取当前位置
  • 重生做二次元网站网站建设公司 未来
  • 怎么买网站做竞价改网站可以吗
  • 建设银行网站怎么下载学院网站建设
  • 网站开发及服务器总共多少钱电子商务网站建设信息