题目名称 4248. 数字段
输入输出 number.in/out
难度等级 ★★★
时间限制 1000 ms (1 s)
内存限制 512 MiB
测试数据 20
题目来源 GravatarRuyi 于2026-01-03加入
开放分组 全部用户
提交状态
分类标签
分享题解
通过:2, 提交:5, 通过率:40%
GravatarRuyi 100 1.793 s 12.00 MiB C++
GravatarRuyi 100 1.987 s 12.00 MiB C++
GravatarLikableP 30 15.478 s 1.64 MiB C++
GravatarHXF 30 15.490 s 3.67 MiB C++
GravatarHXF 0 15.484 s 3.67 MiB C++
本题关联比赛
2026.1.8
关于 数字段 的近10条评论(全部评论)
这题顶多 1.5 星吧
Gravatar梦那边的原神
2026-01-15 18:48 1楼

4248. 数字段

★★★   输入文件:number.in   输出文件:number.out   简单对比
时间限制:1 s   内存限制:512 MiB

【题目描述】

给定一个长度为$n$的数字序列$a$(每个元素 $a_i$=0或1或...或9),以及三个正整数$m,k,L$。对于连续子序列 $a_l...a_r$,定义其权值$val(l,r) 为将 a_l,...,a_r$按顺序拼接成的十进制数对$m$取模的结果。请计算满足$val(l,r)=k$的连续子序列(长度小于等于$L$)的数量。

输入:/upload/file/20260108/20260108210845_91865.txt

输出:/upload/file/20260108/20260108210854_18581.txt

【输入格式】

第一行包含四个整数$n,m,k,L$。

第二行包含$n$个整数,表示数字序列$a_1,a_2,...,a_n$。

【输出格式】

输出一个整数,表示满足条件的连续子序列的数量。

【样例输入】

3 5 3 2
2 3 1

【样例输出】

2

【数据规模与约定】

对于30%的数据,$n≤1000,L≤1000,m≤100$

对于80%的数据,$n≤5×10^4,L≤10^5,m≤200$

对于90%的数据,$n≤10^5,L≤10^5,m≤800$

对于100%的数据,$n≤10^5,L≤10^5,m≤10^3,k≤10^3$

注意常数问题