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

广州网站建设代理网站推广软件免费

广州网站建设代理,网站推广软件免费,西安网站设计制作一般多少钱,好网站AcWing 1230. K倍区间 题目描述 给定一个长度为 NNN 的数列,A1,A2,…ANA_1, A_2, … A_NA1​,A2​,…AN​ ,如果其中一段连续的子序列 Ai,Ai1,…AjA_i, A_{i1}, … A_jAi​,Ai1​,…Aj​ 之和是 KKK 的倍数,我们就称这个区间 [i,j][i,j][i,…

AcWing 1230. K倍区间

题目描述

给定一个长度为 NNN 的数列,A1,A2,…ANA_1, A_2, … A_NA1,A2,AN ,如果其中一段连续的子序列 Ai,Ai+1,…AjA_i, A_{i+1}, … A_jAi,Ai+1,Aj 之和是 KKK 的倍数,我们就称这个区间 [i,j][i,j][i,j]KKK 倍区间。

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

输入格式

第一行包含两个整数 NNNKKK

以下 NNN 行每行包含一个整数 AiA_iAi

输出格式

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

数据范围

1≤N,K≤1000001≤N,K≤1000001N,K100000,
1≤Ai≤1000001≤A_i≤1000001Ai100000

输入样例:

5 2
1
2
3
4
5

输出样例:

6

思路

求区间 [l,r][l,r][l,r] 的和是 kkk 的倍数的个数。

求区间和,我们可以通过 前缀和 来求出。

定义 sum[i] 表示第 111 个元素到第 iii 个元素的和,那么 s[r] - s[l-1] 就是区间 [l,r][l,r][l,r] 的和。

若满足条件:区间 [l,r][l,r][l,r] 的和是k的倍数,即 (s[r] - s[l-1]) % k == 0 ,等价于 s[r] % k == s[l-1] % k

说人话,这也就意味着:

如果 s[r] mod ks[l - 1] mod k 的余数相等,那么 s[r] - s[l - 1] 的差值必然是 kkk 的倍数。

比如:13 % 7 == 20 % 7,则 (20 - 7) % 7 == 0

那么题目就是要我们求 前缀和%k==0 的组合有多少种。

cnt[i] 存储目前为止前缀和相同的个数,iii 表示这个前缀和的值。

每次用 res 来递加 cnt[i] 相同的个数,前面有几个 前缀和的值 和 当前前缀和 相等,那么这个前缀和就能和前面每一个组成一个组合,所以要 res += cnt[s[i]] ,然后再加上现在的前缀和,即 cnt[s[i]]++

初始化 cnt[0] = 1 ,因为当 s[i] == 0 时,这个前缀和本身就是 kkk 的倍数,不需要再跟别的前缀和组合,计算结果时就要加上这一个。

代码

#include <iostream>
#include <cstring>
#include <algorithm>
#define ll long long
using namespace std;
const int N = 1e5 + 10;int n, k;
ll s[N];
ll cnt[N];int main()
{cin >> n >> k;ll res = 0;cnt[0] = 1;for (int i = 1; i <= n; i++){cin >> s[i];s[i] = (s[i] + s[i - 1]) % k;   //每次前缀和都取模res += cnt[s[i]];   //和前面每一个都组合一下cnt[s[i]]++;   //现在又多了一个}cout << res << endl;return 0;
}

http://www.hkea.cn/news/203074/

相关文章:

  • 乐清做网站哪家好税收大数据
  • 校园网站建设需求天津放心站内优化seo
  • 哈尔滨微网站建设热搜在哪里可以看
  • 网站用oracle做数据库福州seo推广服务
  • 康保县城乡建设委员会网站营销型网站重要特点是
  • 手机做网站的步骤跨境电商有哪些平台
  • 请人做网站要多少网络事件营销
  • 网站页脚有什么作用厦门seo哪家强
  • 东莞百度提升优化优化推广网站推荐
  • 查企业网站有哪些站长统计app软件
  • 做a高清视频在线观看网站济源新站seo关键词排名推广
  • 刚做的网站怎么搜索不出来百度seo收录软件
  • 视频拍摄app站长工具seo综合查询广告
  • 新闻单位建设网站的意义武汉seo推广优化
  • 低价网站公司软文怎么写
  • 东莞市建设公共交易中心网站百度官网首页
  • 如何建立的网站能争钱优化营商环境 助推高质量发展
  • 做百度网站营销型网站建设排名
  • 网站域名被黑国际新闻最新消息战争
  • 苏州网站开发公司济南兴田德润厉害吗网络自动推广软件
  • 广药网站建设试卷株洲最新今日头条
  • 网站建设管理考核办法微信推广平台怎么做
  • 网站新闻模块代码网络推广有哪些常见的推广方法
  • 合肥大型网站如何推广普通话
  • 高端网站制作软件怎么样推广自己的店铺和产品
  • 无障碍浏览网站怎么做关键词seo排名优化推荐
  • wordpress 247seo推广系统
  • 做深圳门户网站起什么名字好泰州seo外包公司
  • 网站视频上传怎么做百度站长平台论坛
  • wordpress农业模板下载小时seo