news 2026/9/3 1:41:25

打卡信奥刷题(2530)用C++实现信奥 P2022 有趣的数

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
打卡信奥刷题(2530)用C++实现信奥 P2022 有趣的数

P2022 有趣的数

题目描述

让我们来考虑111NNN的正整数集合。让我们把集合中的元素按照字典序排列,例如当N=11N=11N=11时,其顺序应该为:1,10,11,2,3,4,5,6,7,8,91,10,11,2,3,4,5,6,7,8,91,10,11,2,3,4,5,6,7,8,9

定义KKKNNN个数中的位置为Q(N,K)Q(N,K)Q(N,K),例如Q(11,2)=4Q(11,2)=4Q(11,2)=4。现在给出整数KKKMMM,要求找到最小的NNN,使得Q(N,K)=MQ(N,K)=MQ(N,K)=M

输入格式

输入文件只有一行,是两个整数KKKMMM

输出格式

输出文件只有一行,是最小的NNN,如果不存在这样的NNN就输出000

输入输出样例 #1

输入 #1

2 4

输出 #1

11

输入输出样例 #2

输入 #2

100000001 1000000000

输出 #2

100000000888888879

说明/提示

【数据约定】

40%40\%40%的数据,1≤K,M≤1051 \le K,M \le 10^51K,M105

100%100\%100%的数据,1≤K,M≤1091 \le K,M \le 10^91K,M109

C++实现

#include<cmath>#include<cstdio>usingnamespacestd;intlen;longlongk,m,num,p[20];intmain(){scanf("%lld%lld",&k,&m);p[0]=1;for(inti=1;i<=18;++i)p[i]=p[i-1]*10;for(inti=0;i<=18;++i)if(k==p[i]){if(m==i+1)printf("%lld\n",k);elseprintf("0\n");return0;}len=(int)log10(k);for(inti=len;i>=0;--i)num+=k/p[i]-p[len-i]+1;if(num==m)printf("%lld\n",k);elseif(num>m)printf("0\n");else{for(inti=1;i<=10;++i){k*=10;num+=k-p[len+i];if(num>=m){num-=k-p[len+i];printf("%lld\n",m-num+p[len+i]-1);return0;}}}return0;}

后续

接下来我会不断用C++来实现信奥比赛中的算法题、GESP考级编程题实现、白名单赛事考题实现,记录日常的编程生活、比赛心得,感兴趣的请关注,我后续将继续分享相关内容

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

MuseScore终极安装配置指南:免费开源乐谱编辑软件完整教程

MuseScore终极安装配置指南&#xff1a;免费开源乐谱编辑软件完整教程 【免费下载链接】MuseScore MuseScore is an open source and free music notation software. For support, contribution, bug reports, visit MuseScore.org. Fork and make pull requests! 项目地址: …

作者头像 李华
网站建设 2026/9/2 17:54:18

CapsLock+:重新定义你的键盘输入体验

CapsLock&#xff1a;重新定义你的键盘输入体验 【免费下载链接】capslock-plus An efficiency tool that provides various functions by enhancing the Caps Lock key into a modifier key. 项目地址: https://gitcode.com/gh_mirrors/ca/capslock-plus 在日常的键盘使…

作者头像 李华
网站建设 2026/9/2 10:57:12

42、系统调优:代码与内核大小优化指南

系统调优:代码与内核大小优化指南 在嵌入式系统开发中,资源往往是有限的,因此优化代码和内核的大小至关重要。本文将介绍一些有效的方法,帮助你减少代码和内核的占用空间。 1. 确定目标根文件系统所需文件 使用 readelf 程序可以更优雅地确定程序所需的共享库。以下是具…

作者头像 李华
网站建设 2026/9/2 10:36:44

Feast特征存储平台深度解析:从数据源到服务的5大核心机制

Feast特征存储平台深度解析&#xff1a;从数据源到服务的5大核心机制 【免费下载链接】feast Feature Store for Machine Learning 项目地址: https://gitcode.com/GitHub_Trending/fe/feast Feast作为现代机器学习特征存储平台&#xff0c;通过创新的架构设计解决了机器…

作者头像 李华
网站建设 2026/9/1 19:57:00

DC-DC降压转换器设计实战:基于TL494的开源方案详解

DC-DC降压转换器设计实战&#xff1a;基于TL494的开源方案详解 【免费下载链接】BUCK电路-TL494方案资源下载 本仓库提供了一个完整的BUCK电路设计方案&#xff0c;基于TL494控制芯片。该方案包含了详细的原理图、PCB设计文件以及Gerber文件&#xff0c;方便用户进行电路的设计…

作者头像 李华
网站建设 2026/9/2 23:18:03

MySQL注入点写入WebShell的几种方式

在工具化日益成熟的今天&#xff0c;手工注入的能力越来越被忽视了。当你掌握了一款工具的使用时&#xff0c;应更深入的去了解工具帮你做了什么&#xff0c;把工具所产生的影响控制在自己可控的范围内。 比如&#xff1a;当面对一个MySQL注入点&#xff0c;通过使用SQLmap的-…

作者头像 李华