删数问题--贪心算法+string类的一些应用
来源:互联网 发布:人工智能加医疗概念股 编辑:程序博客网 时间:2024/06/06 14:29
先上题目:
Description
你有一个长度为n的数字串, 现在要求你删除其中k个数字, 使得剩下的数字在不改变原有顺序的情况下,组成的数字最大.
Input
每组数据包含一个数字串(1 <= n <= 1000),和一个整数k (0 <= k < n).
Output
对于每组数据, 输出你的答案.
Sample Input
1452 233 0
Sample Output
5233
思路是这样的,每次从左开始比较,如果全是递减的话,就删除最后一位,如果出现非递减的数,就删除第一次出现递增的那个数。
代码:
#include <iostream>#include <string>using namespace std;int main(){ string str; int n; string::size_type i; while(cin >> str >> n) { while(n) { for(i = 0; i != str.size() - 1 && str[i] >= str[i + 1]; i++); str.erase(i, 1); n--; } cout << str << endl; } return 0;}
size_type其实是string模板类定义的一种类型之一,它与size_of的用法相似,只是它根据存储的类型返回字符串的长度.对于 string具体化,将根据char返回字符串的长度,在这种情况下,size_type与size_of等效.size_of是一种无符号类型.
size_type是在string类内定义的一个无符号整形类型,由于string类里很多方法的返回值都是size_type类型的,所以必须使用size_type进行类型声明。
erase(pos, 1)意思从pos位置删除第一个字符
1 0
- 删数问题--贪心算法+string类的一些应用
- 贪心算法 - 删数问题
- 贪心算法-删数问题
- 贪心算法---删数问题
- 贪心算法,删数问题
- 贪心算法 - 删数问题
- 删数问题(典型的贪心算法问题)
- 算法:(贪心算法)--删数问题
- 问题 A: [贪心算法]删数问题
- 删数问题(简单的贪心算法)
- 一个java写的贪心算法实现删数问题
- 贪心算法之删数问题
- 贪心算法—删数问题
- 【贪心算法初学】删数问题
- OJ3RD 1181 删数问题 - 贪心算法
- 贪心算法之删数问题
- 贪心算法例题:2072删数问题
- C++贪心算法之删数问题
- 213. House Robber II
- Ubuntu12.04 安装adb
- leetcode刷题,总结,记录,备忘 338
- 第四周项目5.3—编写递归函数求两个数的最大公约数
- 重要的源码地址
- 删数问题--贪心算法+string类的一些应用
- 图灵机功能总结
- php:字符串的合并与分割
- android 中theme.xml与style.xml的区别
- 关于ContentType-charset对于浏览器编码的作用
- C++11智能指针——weak_ptr
- mysql安装失败解决办法
- mycat 分片中快速数据迁移思考
- CoordinatorLayout使用方法