P1106 删数问题题解

题目

键盘输入一个高精度的正整数N(不超过250位),去掉其中任意k个数字后剩下的数字按原左右次序将组成一个新的非负整数。编程对给定的N和k,寻找一种方案使得剩下的数字组成的新数最小。

输入输出格式

输入格式

输入两行正整数。

第一行输入一个高精度的正整数n。

第二行输入一个正整数k,表示需要删除的数字个数。

输出格式

输出一个整数,最后剩下的最小数。

输入输出样例

输入样例

175438 
4

输出样例

13

解析

首先,先举一个例子:1 7 5 4 3 8,删的个数:4

不难看出:第一次删的应该是7,第二次删的应该是5,第三次删的应该是4,第四次删的应该是8

那么,剩下的数就是13。

是如何得出规律的呢? 我们仔细观察一下这个例子:

第一次删的数为7,和5比较,发现7更大,第二次删的数为5,和4比较,发现5更大

第三次删的数为4,和3比较,发现4更大,第四次删的数为8,和最后一个数比较,发现8更大(如果没有最后一个数,就假设为0)

很明显,就是删去下坡数,也就是这个例子中的7(比5大)、5(比4大)、4(比3大)、8(比最后一个大(假设有,并为0))。

#include<iostream>
#include<algorithm>
using namespace std;
string s;
int n,a[251],l,k;
int main(){cin>>s>>n;//扫描进来字符串l=s.size();for(int i=0;i<l;i++){//将字符拆转化为数字,放入数组中a[i]=s[i]-'0';}	for(int i=1;i<=n;i++){//循环删去数字的个数for(int j=0;j<l;j++){if(a[j]>a[j+1]){//删去下坡数字for(int k=j;k<l;k++){a[k]=a[k+1];}l--;//长度减1break;}}}int i=0;while(a[i]==0&&k<l-1){//将前导零删除k++;i++;}for(int i=k;i<l;i++){cout<<a[i];}return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/688137.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

图像处理与计算机视觉算法

图像处理与计算机视觉算法是实现对图像和视频内容分析、理解和操作的一系列技术。这些算法可以分为多个类别,包括但不限于以下几个主要方面: 预处理: 像素操作:灰度化、二值化、直方图均衡化等,用于改善图像的对比度和亮度分布。去噪:高斯滤波、中值滤波、自适应滤波等,…

【C++搜索】DFS:拆分自然数

题目描述 “天下熙熙&#xff0c;皆为利来&#xff1b;天下攘攘&#xff0c;皆为利往”&#xff0c;监狱里的暗势力划分地盘的目的无非是为了获取利益&#xff0c;他们分配利益的方式是基于这样一个准则&#xff1a;设总利益为自然数&#xff2e;&#xff0c;则任何一个大于1的…

AB测试最小样本量

1.AB实验过程 常见的AB实验过程&#xff0c;分流-->实验-->数据分析-->决策&#xff1a;分流&#xff1a;用户被随机均匀的分为不同的组实验&#xff1a;同一组内的用户在实验期间使用相同的策略&#xff0c;不同组的用户使用相同或不同的策略。数据收集&#xff1a;…

HOOPS发布全新CAD文件支持以及改进的API性能版本!增加了对Navisworks和C#支持!

全球工程软件开发工具包的领先提供商Tech Soft 3D今天宣布推出HOOPS Exchange 2024&#xff08;支持30多种文件格式的领先CAD数据转换SDK&#xff09;和HOOPS Publish 2024&#xff0c;用于发布交互式3D PDF、3D HTML和3D CAD数据的领先工具包。 HOOPS Exchange现在支持Navisw…

C++day6

模拟跟随导演去动物园&#xff1a; #include <iostream>using namespace std; class Animal { private:string name; public:Animal(){}Animal(string name):name(name){}virtual void perform(){cout << name << "为我们讲解,说&#xff1a;" &…

php 数组函数

php 数组函数 1. 常用的php数组函数 1. 常用的php数组函数 array_pop() 删除数组中最后一个元素 array_push() 将一个或多个元素插入到数组的末尾 array_keys <?php $arr array("刘岩" > 30, "范冰冰" > 31, "娜扎" > 31);$…

~汉诺塔~(C语言)~

引言 汉诺塔&#xff08;Hanoi Tower&#xff09;&#xff0c;又称河内塔&#xff0c;源于印度一个古老传说。大梵天创造世界的时候做了三根金刚石柱子&#xff0c;在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从上面开始按大小顺序重新摆放在…

npm run serve启动报错npm ERR! Missing script: “serve“

启动项目的时候用npm run serve发现报了以下的错误 解决方法&#xff1a; 1.一般情况下&#xff0c;这个问题是因为package.json文件里面确实没有 这里没有可能因为你的脚手架版本比较低&#xff0c;如果不想换&#xff0c;可以用 这里面有的 npm run dev去启动也是可以的 n…

精工电联:定制精工线缆,赋能科技互联---致力于为客户提供卓越的连接线缆和连接器产品

精工电联 “定制精工线缆 &#xff0c;赋能科技互联”&#xff0c;精工电联致力于为高科技产业提供全方位、多维度的集成线缆解决方案。凭借深厚的研发实力和丰富的行业经验&#xff0c;精工电联已经成功地在工控设备、医疗设备、人工智能、新能源领域、轨道交通和超声波设备等…

Vue3之ElementPlus中Table选中数据的获取与清空方法

Vue3之ElementPlus中Table选中数据的获取与清空方法 文章目录 Vue3之ElementPlus中Table选中数据的获取与清空方法1. 点击按钮获取与清空选中表格的数据1. 用到ElementPlus中Table的两个方法2. 业务场景3. 操作案例 1. 点击按钮获取与清空选中表格的数据 1. 用到ElementPlus中…

分享一个学英语的网站

名字叫&#xff1a;公益大米网​​​​​​​ Freerice 这个网站是以做题的形式来记忆单词&#xff0c;题干是一个单词&#xff0c;给出4个选项&#xff0c;需要选出其中最接近题干单词的选项。 答对可以获得10粒大米&#xff0c;网站的创办者负责捐赠。如图 触发某些条件&a…

Web APIs - 06

正则表达式 正则表达式是一种字符串匹配的规则 使用场景&#xff1a; 例如验证表单&#xff1a;手机号表单要求用户只能输入11位的数字 (匹配)过滤掉页面内容中的一些敏感词(替换)&#xff0c;或从字符串中获取我们想要的特定部分(提取)等 正则基本使用 定义规则 const reg…

手把手教你绘制自定义控件

主要是注意两点,一点是在控件构造函数中设置一些属性,另一点是重写OnPaint方法,参考代码那如下: class SelfControl:Control{public SelfControl(){//this.SetStyle(ControlStyles.ResizeRedraw, true);//空间大小改变时,控件会重绘//this.SetStyle(ControlStyles.UserPai…

代码随想录算法训练营第三十四天 860.柠檬水找零 、 406.根据身高重建队列、452. 用最少数量的箭引爆气球

代码随想录算法训练营第三十四天 | 860.柠檬水找零 、 406.根据身高重建队列、452. 用最少数量的箭引爆气球 860.柠檬水找零 题目链接&#xff1a;860. 柠檬水找零 - 力扣&#xff08;LeetCode&#xff09; class Solution {public boolean lemonadeChange(int[] bills) {//…

TOP100 图论

3.207. 课程表 你这个学期必须选修 numCourses 门课程&#xff0c;记为 0 到 numCourses - 1 。 在选修某些课程之前需要一些先修课程。 先修课程按数组 prerequisites 给出&#xff0c;其中 prerequisites[i] [ai, bi] &#xff0c;表示如果要学习课程 ai 则 必须 先学习课…

el-form validator的校验提示遮盖下边的内容

问题&#xff1a;表单的validator校验&#xff0c;无法自动撑起tip提示的高度&#xff0c;导致遮盖了下边内容 解决方式&#xff1a;将tip提示的样式的定位设置为遵循正常的文档流对象&#xff0c;实现自适应高度。 .el-form-item .el-form-item__content .el-form-item__err…

探索ls命令中的通配符匹配

在Linux系统中&#xff0c;ls命令是一个常用的文件列表显示工具。除了基本的文件显示功能外&#xff0c;ls还支持通配符匹配&#xff0c;通过使用通配符&#xff0c;用户可以更灵活地过滤和显示文件。本篇博客将介绍ls命令中的通配符&#xff0c;包括问号&#xff08;?&#x…

数据库MySQL中出现乱码和表格不对齐怎么解决

MySQL中出现乱码问题及解决办法&#xff1a; 情况类似&#xff1a; 首先进入到数据库中&#xff0c;命令&#xff1a;mysql -h localhost -uroot -p或者mysql -uroot -p;进入数据库后选择一个你的数据库查看表中的中文是否乱码 以上是数据库中表格出现乱码情况&#xff0c;原…

Cesium 问题——加载 gltf 格式的模型之后太小,如何让相机视角拉近

文章目录 问题分析问题 刚加载的模型太小,如何拉近视角放大 分析 在这里有两种方式进行拉近视角, 一种是点击复位进行视角拉近一种是刚加载就直接拉近视角// 模型三加载 this.damModel = new Cesium.Entity({name: "gltf模型",position:</

Redis:常用数据类型及其应用场景

Redis中常见的数据类型有五种&#xff1a;String&#xff08;字符串&#xff09;&#xff0c;Hash&#xff08;哈希&#xff09;&#xff0c;List&#xff08;列表&#xff09;&#xff0c;Set&#xff08;集合&#xff09;、Zset&#xff08;有序集合&#xff09;。下面我来分…