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

网站建设需求调研问卷洛阳建设银行官方网站

网站建设需求调研问卷,洛阳建设银行官方网站,东莞手机网页制作,珠宝商城网站设计题目描述 给定一个长度为 N 的数列,A1,A2,⋯AN,如果其中一段连续的子序列 Ai,Ai1,⋯Aj ( i≤j ) 之和是 K 的倍数,我们就称这个区间 [i,j] 是 K 倍区间。 你能求出数列中总共有多少个 K 倍区间吗? 输入描述 第一行包含两个整数…

题目描述

给定一个长度为 N 的数列,A1,A2,⋯AN,如果其中一段连续的子序列 Ai,Ai+1,⋯Aj ( i≤j ) 之和是 K 的倍数,我们就称这个区间 [i,j] 是 K 倍区间。

你能求出数列中总共有多少个 K 倍区间吗?

输入描述

第一行包含两个整数 N 和 K( 1≤N,K≤10^{5} )。

以下 N 行每行包含一个整数 Ai​ ( 1≤Ai≤10^{5})

输出描述

输出一个整数,代表 K 倍区间的数目。

输入输出样例

示例

输入

5 2
1
2
3
4
5

输出

6

 

 

 思路:

  1. 计算前缀和数组S。

  2. 对于每个S[j],计算S[j] % K。

  3. 统计在此之前有多少个S[i](i < j)满足S[i] % K == S[j] % K。

  4. 将所有这样的数量累加,就是总的K倍区间数。

任何两个前缀区间的和对k取模的值相等,则由大的前缀区间减掉小的前缀区间所形成的区间的必定是K倍区间 

因此对具有区间和%k值相等任何两个区间进行组合,再将这些值加起来就得到结果

证明: 假设一个数列为a1,a2,a3,....,an,一个小的前缀区间s1为a1,a2,a3,....,ap,还有一个大的前缀区间s2为a1,a2,a3,...,a(p+m),当我们对s1、s2的和分别取模,得到(a1+a2+a3+...+ap)%k和(a1+a2+a3+...+ap+m)%k

当这两个值相等的时候,我们则可以列出这个等式:

(a1+a2+a3+...+ap)%k-(a1+a2+a3+...+ap+m)%k=0根据取模也具有分配律可得到,(a1+a2+a3+...+ap-a1-a2-a3-...-ap+m)%k=0

因此可以推出结论,s2-s1得出的区间必定为k倍区间。 

#include<iostream>
using namespace std;typedef long long ll;
int n, k;
const int N = 1e5+10;
ll a[N]; 
ll cnt[N]; 
ll ans;int main()
{cin>>n>>k;for(int i=1; i<=n; ++i){cin>>a[i];a[i] += a[i-1];  //前缀和数组cnt[a[i]%k]++;  //cnt[i]:余数 i 出现的次数}ans = cnt[0];//遍历余数 for(int i=0; i<k; ++i){ans += (cnt[i]*(cnt[i]-1))/2;//组合数求法,n个区间任取两个的情况:n*(n-1)/2 }cout<<ans;return 0;
}
http://www.dtcms.com/wzjs/556644.html

相关文章:

  • 有什么自学网站建设的网站we建站
  • 有自媒体谁还做网站网站程序前台
  • 品牌网站制作流程图珠海企业网站制作费用
  • 简单网站建设视频wordpress注册页面美化
  • 威海市建设局官方网站软件页面设计用哪个软件比较好
  • 商业网站 模板中国电子加工网
  • 企业网站建设与网络营销的关系wordpress添加目录
  • 电商培训网站北京微信公众号定制开发
  • 单位建设网站的作用意义浏览器入口
  • c语言程序设计网站受欢迎的大连网站建设
  • 电子商务网站建设需要做好哪些准备6中国it企业排行榜
  • 万户做网站怎么样卖域名的公司 骗做网站
  • 网站建设公司(深圳信科)双语网站建设定制开发
  • 山西省住房和城乡建设厅门户网官方网站软件开发用什么软件编程
  • 赣州市经开区住房和建设局网站三国网页游戏排行榜
  • 美术网站建设网络服务怎么写
  • 营销型网站功能模块朝阳seo建站
  • 安阳建设局网站快速建站软件排名
  • 找人做企业网站注意啥wordpress.图片旋转代码
  • 网络彩票网站建设上海市网站建设电话号码
  • 阀门专业网站建设刷粉网站推广
  • 广西新农村建设指导员网站建站快车
  • 个人如何做免费网站携程网网站推广方式
  • 昆明云南微网站制作哪家好十大软件app排行免费
  • 怎么建设个人网站教程wordpress备份数据库结构
  • 山东网站建设制作公司做灯具外贸哪个网站好做
  • 建筑装饰网站模板推荐专业的外贸建站公司
  • 怎么做外围网站的代理佛山百度网站快速排名
  • 网站安全备案价公示网站
  • 怎么做自己优惠券网站呼伦贝尔寰宇网站建设