题目1882:蓝桥杯2017年第八届真题-k倍区间

#include<iostream>

using namespace std;

int n,k;

int sum[100001];

int A[100001];

int num[100001];//统计各余数出现次数

long long cnt=0;

int main(){

cin>>n>>k;

num[0]=1;//有的数字本身就是k的倍数

for(int i=1;i<=n;i++){

cin>>A[i];

sum[i]=(sum[i-1]+A[i])%k;

num[sum[i]]++;//统计相同余数的个数

}

for(int i=0;i<k;i++){

cnt+=(long long)num[i]*(num[i]-1)/2;

}

cout<<cnt<<endl;

return 0;

}

相关推荐
月落归舟26 分钟前
帮你从算法的角度来认识二叉树---(二)
算法·二叉树
清华都得不到的好学生1 小时前
数据结构->1.稀疏数组,2.数组队列(没有取模),3.环形队列
java·开发语言·数据结构
SilentSlot1 小时前
【数据结构】Hash
数据结构·算法·哈希算法
是娇娇公主~2 小时前
Lambda表达式详解
数据结构·c++
leaves falling2 小时前
C++ string 类:从入门到模拟实现
开发语言·c++
样例过了就是过了3 小时前
LeetCode热题100 柱状图中最大的矩形
数据结构·c++·算法·leetcode
wsoz3 小时前
Leetcode哈希-day1
算法·leetcode·哈希算法
阿Y加油吧3 小时前
LeetCode 二叉搜索树双神题通关!有序数组转平衡 BST + 验证 BST,小白递归一把梭
java·算法·leetcode
BlockChain8883 小时前
区块链的组件:从数据结构到去中心化共识
数据结构·去中心化·区块链
liuyao_xianhui3 小时前
优选算法_最小基因变化_bfs_C++
java·开发语言·数据结构·c++·算法·哈希算法·宽度优先