码迷,mamicode.com
首页 > 其他好文 > 详细

1748: 删数问题

时间:2019-03-23 22:47:24      阅读:204      评论:0      收藏:0      [点我收藏+]

标签:最小数   描述   最小   ++   ring   namespace   substr   方案   div   

题目描述

给定n 位(n≤100)正整数a,去掉其中任意k≤n 个数字后,剩下的数字按原次序排列组成一个新的正整数。对于给定的n 位正整数a和正整数k,设计一个算法找出剩下数字组成的新数最小的删数方案。 对于给定的正整数a,计算删去k 个数字后得到的最小数。

输入

输入数据的第1 行是1 个正整数a。第2 行是正整数k。

输出

将计算出的最小数输出。

样例输入

178543
4

样例输出

13

#include <iostream>
#include <string>
using namespace std;

int main()
{
	string s;
	int k;
	cin >> s >> k;
	
	int n = 0, i = -1;
	int len = s.length();
	while(n < k)
	{
		i ++;
		if(s[i] > s[i + 1])
		{
			s.erase(i, 1);
			n ++;
			i = -1;
		}
	}
	i = 0;
	while(s[i] == ‘0‘)
		i ++;
	
	cout << s.substr(i, len) << endl;
	
	return 0;
}

  

1748: 删数问题

标签:最小数   描述   最小   ++   ring   namespace   substr   方案   div   

原文地址:https://www.cnblogs.com/mjn1/p/10585750.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!