题目:

键盘输入一个高精度的正整数n(<=240位),

去掉任意s个数字后剩下的数字按原左右次序将组成一个新的正整数。

编程对给定的n和s,寻找一种方案,使得剩下的数最小。

Simple Input
178543
4
Simple Output
13
思路:
每一步总是选择一个使剩下的数最小的数字删除,即按高位到低位的顺序搜索,若各位数字递增,则删除最后一个数字;否则删除第一个递减区间的首字符,这样删一位便形成了一个新的数字串。然后回到串首,按上述规则再删除下一个数字
代码:
#include<iostream>
#include<cstring>
using namespace std;int main(){char s[255];int k;bool bo[255];memset(bo,false,sizeof(bo));cin>>s>>k;int n=strlen(s);while(k--){int i,last;for(i=0,last=-1;i<n;i++){if(bo[i])continue;if(last!=-1&&s[i]<s[last]){bo[last]=true;cout<<s[last]<<endl;break;}last=i;}if(i==n){bo[last]=true;
//            for(int j=n-1;j>=0&&k>0;j--){
//                if(!bo[j])bo[j]=true,k--;
//            }
        }}bool flag=false;for(int i=0;i<n;i++){if(!bo[i]&&(flag||s[i]!='0'))cout<<s[i],flag=true;}if(!flag)cout<<0;return 0;
}

转载于:https://www.cnblogs.com/FuTaimeng/p/5661421.html

code4906 删数问题相关推荐

  1. SDUT 贪心算法 删数问题

    Problem Description 键盘输入一个高精度的正整数n(≤100位),去掉其中任意s个数字后剩下的数字按照原来的左右次序组成一个新的正整数.编程对给定的n与s,寻找一种方案,使得剩下的数 ...

  2. 7-9 删数问题 (10 分)(思路加详解)

    一:题目 有一个长度为n(n <= 240)的正整数,从中取出k(k < n)个数,使剩余的数保持原来的次序不变,求这个正整数经过删数之后最小是多少. 输入格式: n和k 输出格式: 一个 ...

  3. python贪心算法求删数问题_贪心算法删数问题

    删数问题 给定n位正整数a,去掉其中任意k个数字后,剩下的数字按原次序排列组成一个新的正整数.对于给定的n和k,设计一个算法,找出剩下数字组成的新数最少的删数方案. 输入示例: 178543 4 输出 ...

  4. 信息学奥赛一本通 1321:【例6.3】删数问题(Noip1994) | 洛谷 P1106 删数问题

    [题目链接] ybt 1321:[例6.3]删数问题(Noip1994) 洛谷 P1106 删数问题 [题目考点] 1. 贪心 [解题思路] 解法1:每次找k+1个数中的最小值 假设我们从左向右扫描每 ...

  5. 信息学奥赛一本通(1321:【例6.3】删数问题(Noip1994))

    1321:[例6.3]删数问题(Noip1994) 时间限制: 1000 ms         内存限制: 65536 KB 提交数: 18133     通过数: 6280 [题目描述] 输入一个高 ...

  6. 贪心算法——洛谷(P1106)删数问题

    首先,我们先举一个例子: 1 7 5 4 3 8 删的个数:4 不难看出: 第一次删的应该是 7 第二次删的应该是 5 第三次删的应该是 4 第四次删的应该是 8 那么,剩下的数就是"13& ...

  7. 1145: 零起点学算法52——数组中删数II

    1145: 零起点学算法52--数组中删数II Time Limit: 1 Sec  Memory Limit: 64 MB   64bit IO Format: %lld Submitted: 29 ...

  8. 给定n位正整数a,去掉其中任意k个数字后,剩下的数字按原次序排列组成⼀个新的正整数,求组成的新数最小的删数方案(O((n-k)logk)优化)

    问题描述 给定n位正整数a,去掉其中任意k个数字后,剩下的数字按原次序排列组成⼀个新的正整数.对于给定的n和k,设计⼀个算法,找出剩下数字组成的新数最少的删数方案. 这一道题来自zyq老师的算法分析与 ...

  9. Python(贪心算法)问题 D: 删数问题_输入一个高精度的正整数N,去掉其中任意S个数字后剩下的数字按原左右次序组成一个新的正整数。

    问题 D: 删数问题 题目描述 输入一个高精度的正整数N,去掉其中任意S个数字后剩下的数字按原左右次序组成一个新的正整数. 编程对给定的N和S,寻找一种方案使得剩下的数字组成的新数最小. 输出新的正整 ...

  10. 2015年京胜杯删数!删数

    删数?删数! Time Limit: 1000 MS Memory Limit: 65536 KB Total Submissions: 68 Accepted: 7 Description 一个集合 ...

最新文章

  1. Linux软件安装管理---源码安装
  2. 树莓派3b与散热风扇
  3. 登录界面的滑动_【提醒】电子税务局登录方式有变化! 8月31日关闭“原方式登录”...
  4. finalshell日志乱码问题_Tomcat乱码问题
  5. 程序员35岁真的是分水岭吗?小白也能看明白
  6. php.h: No such file or directory
  7. 最新版Scrum指南已发布
  8. NAT-PT (Network Address Translation-Protocol)网络地址转换协议转换
  9. c#随机数总结,汉字,英文,数字
  10. ef mysql 分页查询语句_MySQL、Oracle和SQL Server的分页查询语句
  11. TensorFlow by Google #10使用 NLP 构建讽刺分类器 Using NLP to build a sarcasm classifier
  12. python动态爱心代码_python如何动态绘制爱心 python动态绘制爱心代码示例
  13. 9. 机器人正运动学---修改DH参数
  14. vscode创建工作区及生成html模板
  15. 用Cadence Virtuoso绘制反相器教程
  16. Android-Application被回收引发空指针异常分析(消灭全局变量)
  17. 嵌入式硬件(四)常用模拟集成电路
  18. 适用的验厂考勤工资AB账系统软件这样选择
  19. UML 协作图(通信图) collaboration diagram
  20. Mongodb空密码可连接安全性问题

热门文章

  1. JavaScript-遍历数组
  2. ExtJs UI框架学习五
  3. 个人JS脚本验证大全[转]
  4. smart link和聚合链路综合实验
  5. alter 弹出添加图片_解决PS保存JPG图片内存很大的方法(二)
  6. css多重背景教程,多重背景的CSS动画
  7. 云计算呼叫中心_云呼叫中心是如何有效保护客户信息的?
  8. SprinMVC解决URL多个参数
  9. 【RLchina第四讲】Model-Based Reinforcement Learning
  10. 机器学习系列(九)【最大熵模型】