每日一题洛谷P8649 [蓝桥杯 2017 省 B] k 倍区间c++

P8649 [蓝桥杯 2017 省 B] k 倍区间 - 洛谷 (luogu.com.cn)

cpp 复制代码
#include <iostream>
#include <vector>
using namespace std;
#define int long long
signed main() {
	int n, k;
	cin >> n >> k;
	vector<int> a(n + 1);
	vector<int> sum(n + 1);
	vector<int> cnt(k);
	sum[0] = 0;
	cnt[0] = 1;
	for (int i = 1; i <= n; i++) {
		cin >> a[i];
		sum[i] = (sum[i - 1] + a[i]) % k;
		cnt[sum[i]]++;
	}
	int count = 0;
	for (int i = 0; i < k; i++) {
		count += cnt[i] * (cnt[i] - 1) / 2;
	}
	cout << count << endl;
	return 0;
}
相关推荐
前端小超超16 小时前
capacitor配置ios应用图标不同尺寸
ios·蓝桥杯·cocoa
C_Liu_16 小时前
C++:类和对象(下)
开发语言·c++
coderxiaohan16 小时前
【C++】类和对象1
java·开发语言·c++
阿昭L16 小时前
MFC仿真
c++·mfc
ChillJavaGuy17 小时前
常见限流算法详解与对比
java·算法·限流算法
sali-tec17 小时前
C# 基于halcon的视觉工作流-章34-环状测量
开发语言·图像处理·算法·计算机视觉·c#
你怎么知道我是队长18 小时前
C语言---循环结构
c语言·开发语言·算法
艾醒18 小时前
大模型面试题剖析:RAG中的文本分割策略
人工智能·算法
老赵的博客19 小时前
c++ unqiue指针
java·jvm·c++
程序猿编码19 小时前
基于 Linux 内核模块的字符设备 FIFO 驱动设计与实现解析(C/C++代码实现)
linux·c语言·c++·内核模块·fifo·字符设备