news 2026/4/15 11:06:54

算法竞赛备考冲刺必刷题(C++) | 洛谷 P10262 亲朋数

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
算法竞赛备考冲刺必刷题(C++) | 洛谷 P10262 亲朋数

本文分享的必刷题目是从蓝桥云课洛谷AcWing等知名刷题平台精心挑选而来,并结合各平台提供的算法标签和难度等级进行了系统分类。题目涵盖了从基础到进阶的多种算法和数据结构,旨在为不同阶段的编程学习者提供一条清晰、平稳的学习提升路径。

欢迎大家订阅我的专栏:算法题解:C++与Python实现!

附上汇总贴:算法竞赛备考冲刺必刷题(C++) | 汇总


【题目来源】

洛谷:[P10262 GESP样题 六级] 亲朋数 - 洛谷

【题目描述】

给定一串长度为L LL、由数字0 ∼ 9 0\sim 909组成的数字串S SS。容易知道,它的连续子串共有L ( L + 1 ) 2 \frac{L(L + 1)}22L(L+1)个。如果某个子串对应的数(允许有前导零)是p pp的倍数,则称该子串为数字串S SS对于p pp的亲朋数。

例如,数字串S SS为“12342 1234212342”、p pp2 22,则在15 1515个连续子串中,亲朋数有“12 1212”、“1234 12341234”、“12342 1234212342”、“2 22”、“234 234234”、“2342 23422342”、“34 3434”、“342 342342”、“4 44”、“42 4242”、“2 22”共11 1111个。注意其中“2 22”出现了2 22次,但由于其在S SS中的位置不同,记为不同的亲朋数。

现在,告诉你数字串S SS和正整数p pp,你能计算出有多少个亲朋数吗?

【输入】

输入的第一行,包含一个正整数p pp。约定2 ≤ p ≤ 128 2 \leq p \leq 1282p128
输入的第二行,包含一个长为L LL的数字串S SS。约定1 ≤ L ≤ 10 6 1 \leq L \leq 10^61L106

【输出】

输出一行一个整数表示答案。

【输入样例】

2 102

【输出样例】

5

【算法标签】

《洛谷 P10262 亲朋数》 #动态规划DP# #GESP#

【代码详解】

#include<bits/stdc++.h>usingnamespacestd;#defineintlonglong// 将int重新定义为long long类型constintN=150;// 定义常量N,最大模数p的范围intp,f[N],g[N],ans;// p: 模数, f/g: 动态规划数组, ans: 结果计数string s;// 输入的数字字符串signedmain()// 因为使用了#define int long long, 所以用signed main{cin>>p>>s;// 输入模数p和数字字符串sintlen=s.size();// 获取字符串长度s=" "+s;// 在字符串前添加空格,使索引从1开始for(inti=1;i<=len;i++)// 遍历字符串的每个字符{memset(g,0,sizeof(g));// 清空g数组,用于存储当前状态for(intj=0;j<p;j++)// 遍历所有可能的余数{// 状态转移: 从之前的余数j转移到新的余数t// 新的余数t = (j*10 + 当前数字) % pintt=(j*10+s[i]-'0')%p;// 计算新余数g[t]+=f[j];// 从f[j]状态转移到g[t]}// 特殊情况: 当前数字单独构成子串g[(s[i]-'0')%p]++;// 当前数字单独组成的数字对p取模ans+=g[0];// 统计余数为0的子串数量memcpy(f,g,sizeof(g));// 将g数组复制到f数组,用于下一轮迭代}cout<<ans<<endl;// 输出结果return0;}

【运行结果】

2 102 5
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/14 9:36:27

如何用MGeo辅助老旧小区改造项目规划

如何用MGeo辅助老旧小区改造项目规划 引言&#xff1a;城市更新中的地址数据挑战 在推进城市更新与老旧小区改造的进程中&#xff0c;一个常被忽视但至关重要的基础环节是地址数据的标准化与对齐。由于历史原因&#xff0c;许多老旧小区存在“一地多名”“同名异址”“地址表…

作者头像 李华
网站建设 2026/4/9 2:26:52

解放生产力:告别环境配置,专注阿里通义Z-Image-Turbo模型调优

解放生产力&#xff1a;告别环境配置&#xff0c;专注阿里通义Z-Image-Turbo模型调优 作为一名AI研究员&#xff0c;你是否经常遇到这样的困境&#xff1a;想要比较不同超参数对生成质量的影响&#xff0c;却发现80%的时间都花在了解决环境问题上&#xff1f;CUDA版本冲突、依赖…

作者头像 李华
网站建设 2026/4/15 11:04:30

比官网快10倍!Ubuntu镜像下载加速全攻略

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 编写一个多线程Ubuntu镜像下载加速工具&#xff0c;要求&#xff1a;1.支持同时从多个镜像源分块下载 2.自动选择速度最快的3个节点 3.支持HTTP/HTTPS/FTP协议 4.实时显示各节点下…

作者头像 李华
网站建设 2026/3/29 3:43:19

数据隐私保护:MGeo本地运行不上传任何用户地址数据

数据隐私保护&#xff1a;MGeo本地运行不上传任何用户地址数据 技术背景与核心价值 在地理信息处理、物流调度、城市计算等场景中&#xff0c;地址相似度匹配是实体对齐的关键环节。由于中文地址存在表述多样、缩写习惯差异、区域命名模糊等问题&#xff08;如“北京市朝阳区…

作者头像 李华
网站建设 2026/4/8 19:01:53

1小时内用AI创建WEBUI原型的秘诀

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个快速WEBUI原型生成器&#xff0c;要求&#xff1a;1.支持草图转代码 2.提供多种主题模板 3.生成可交互原型 4.团队协作功能 5.版本控制。优化Kimi-K2模型使其能理解低保真…

作者头像 李华