蓝桥杯k倍区间(前缀和、余数统计)

题目描述

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

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

输入描述

第一行包含两个整数 NN 和 KK( 1≤N,K≤1051≤N,K≤105 )。

以下 N 行每行包含一个整数 AiAi​ ( 1≤Ai≤1051≤Ai​≤105 )

输出描述

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

输入输出样例

示例

输入

复制代码
5 2
1
2
3
4
5

输出

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;

int main()
{
long long n,k;
  cin>>n>>k;

  long long sum=0;
  long long ans=0;
  int cnt[100006]={0};
  cnt[0]=1;
  for(int i=1;i<=n;i++)
  {
    int x;
    cin>>x;
    sum+=x;
    int y=sum%k;
    ans+=cnt[y];
    cnt[y]++;
  }
  cout<<ans;
  return 0;
}
复制代码
6
相关推荐
西岸行者41 分钟前
BF信号是如何多路合一的
算法
大熊背1 小时前
ISP Pipeline中Lv实现方式探究之一
算法·自动白平衡·自动曝光
罗西的思考2 小时前
【OpenClaw】通过 Nanobot 源码学习架构---(5)Context
人工智能·算法·机器学习
Liudef062 小时前
后量子密码学(PQC)深度解析:算法原理、标准进展与软件开发行业的影响
算法·密码学·量子计算
OYpBNTQXi3 小时前
SEAL全同态加密CKKS方案入门详解
算法·机器学习·同态加密
yuannl104 小时前
数据结构----队列的实现
数据结构
蚂蚁数据AntData4 小时前
破解AI“机器味“困境:HeartBench评测实践详解
大数据·人工智能·算法·机器学习·语言模型·开源
ZC跨境爬虫4 小时前
Python异步IO详解:原理、应用场景与实战指南(高并发爬虫首选)
爬虫·python·算法·自动化
Mr_Xuhhh4 小时前
从ArrayList到LinkedList:理解链表,掌握Java集合的另一种选择
java·数据结构·链表
倦王4 小时前
力扣日刷47-补
python·算法·leetcode