hdu 3183 A Magic Lamp

MicroPython ubluetooth 库详细介绍 MicroPython的ubluetooth库为蓝牙通信提供了强大的支持,使得开发者能够在MicroPython环境下轻松实现蓝牙设备之间的通信。其中ubluetooth库为MicroPython提供了强大的蓝牙通信功能,使得开发者能够轻松地在各种支持MicroPython的硬件平台上实现蓝牙设备之间的通信。它提供了一系列的函数和类,用于实现蓝牙设备的扫描、连接、数据传输等功能。- 上述代码中,首先创建了一个蓝牙服务和一个特征,然后可以通过read和write函数读取和写入特征值。# 处理连接成功事件。 阅读详情

A Magic Lamp

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 2954    Accepted Submission(s): 1152


Problem Description
Kiki likes traveling. One day she finds a magic lamp, unfortunately the genie in the lamp is not so kind. Kiki must answer a question, and then the genie will realize one of her dreams.
The question is: give you an integer, you are allowed to delete exactly m digits. The left digits will form a new integer. You should make it minimum.
You are not allowed to change the order of the digits. Now can you help Kiki to realize her dream?
 

Input
There are several test cases.
Each test case will contain an integer you are given (which may at most contains 1000 digits.) and the integer m (if the integer contains n digits, m will not bigger then n). The given integer will not contain leading zero.
 

Output
For each case, output the minimum result you can get in one line.
If the result contains leading zero, ignore it.
 

Sample Input
  
178543 4 1000001 1 100001 2 12345 2 54321 2
 

Sample Output
  
13 1 0 123 321
 

Source
 

Recommend
lcy

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3183

题目大意:给个数字,求去掉m位数字后得到的数字最大。

解题思路:思维题,数字长度范围1000,用数组存储,因为要去掉m个数字,相当于选出n-m个数字,可以发现,选第一位时,为了保证后面至少有n-m-1个数字能继续选择,第一位选择的数字下标范围在时0~m,从中选出最小的数字,记录下标st,选第二位数字时下标范围为(st+1)~(m+1),依次类推。

代码如下:

#include <cstdio>
#include <cstring>
const int maxn=1000+10;
int a[maxn],ans[maxn];
char s[maxn];
int main(void)
{
	int n,m;
	while(scanf("%s",s)!=EOF)
	{
		memset(a,0,sizeof(a));
		memset(ans,0,sizeof(ans));
		scanf("%d",&m);
		n=strlen(s);
		for(int i=0;i<n;i++)
			a[i]=s[i]-'0';
		int st=0,ed=m;
		for(int i=0;i<n-m;i++)
		{
			ans[i]=9;
			for(int j=st;j<=ed;j++)
			{
				if(ans[i]>a[j])
				{
					ans[i]=a[j];
					st=j+1;
				}
			}
			ed++;
		}
		int j=n-m-1;
		for(int i=0;i<n-m;i++)
			if(ans[i])
			{
				j=i;
				break;
			}
		for(int i=j;i<n-m;i++)
			printf("%d", ans[i]);
		printf("\n");
	}
}


深度强化学习训练结果曲线绘制教程 使用python语言,只调用matplotlib库,绘制训练过程中保存的强化学习训练曲线。模仿经典论文中的训练曲线,多次训练取平均,并绘制出阴影区域。 阅读详情

相关推荐

oracle p6 破解版下载,Primavera P6项目管理软件 16~17 图文详细安装教程(附下载)

Primavera P6 Professional项目管理软件结合了Oracle和Microsoft SQL Server关系数据库,是一款非常好用且功能强大的综合的项目管理软件(PPM) 解决方案,主要用于土建等方面的施工计划分析,具有进度时间安排与资源控制功能的多用户、多项目系统,支持多层项目分层结构、角色与技能导向的资源安排、记录实际数据、自定义视图以及自定义数据,本文主要为大家图文详细介绍...

weixin_33978451的博客 4907

HDU - 3183 A Magic Lamp (RMQ + 贪心)

HDU - 3183 A Magic Lamp 题目 给一个最多 1000 位的整数,去掉 n 个数位,使剩下的数字尽可能小。 分析 去掉 n 个数位之后剩下的数位是固定的,之后对于高位贪心的尽可能取最小值即可。可以用RMQ预先处理最小值的下标。不过如果值相同,优先级左边的要比右边的高。剩下的数位有可能比较大,按字符串输出即可。 #include <bits/stdc++.h> #de...

Stormjing的博客 261

【5G】5G 核心网(5GC)基本架构

本文旨在科普5G核心网相关知识...

Learning makes me happy (0^◇^0) 4万+

HDU 3183 A Magic Lamp(贪心 or RMQ)

HDU 3183 A Magic Lamp(贪心+RMQ) 分析: 1.       首先考虑对于n个数字组成的数,只删除1位的情况。 比如176832,删除一位使得剩下的数值最小。结果是删除7而不是删除8所以可知并不总是删除最大的那个数字。 一种可行的贪心策略是:对于n位数构成的数删除m位,每次总是删除这样的a[i]:它是第一个a[i]>a[i+1]的数,如果不存在则就删除a[n]。详见

code 1394

海鸥派OpenEuler开发板实战:从烧写到SSH连接的完整指南

本文提供海鸥派OpenEuler开发板从开箱到SSH远程连接的完整实战指南。详细介绍了基于海思SD3403/SS928芯片的算力开发板系统烧写、存储扩容、网络配置等关键步骤,帮助开发者快速上手这款AI边缘计算设备,并实现高效的远程开发与管理。

ruby5的博客 1120

利用Python爬虫获取淘宝商品评论:实战案例分析

在数字化时代,数据的价值日益凸显,尤其是对于电商平台而言,商品评论作为用户反馈的重要载体,蕴含着丰富的信息。本文将详细介绍如何利用Python爬虫技术获取淘宝商品评论,包括代码示例和关键步骤解析。

2401_87849335的博客 2833

HDU 3183 A Magic Lamp(贪心,删掉m个数字使剩下的数字字符串最小)

题目链接: HDU 3183 A Magic Lamp 题意: 给一个只含数字的字符串ss,从中正好删掉mm个数字,求剩下的最小的数字字符串(不含前导0)?无解输出-1. 数据范围:|s|≤1000|s|\leq 1000 分析: 贪心。 每次从前往后扫到第一个位置ii,满足s[i]>s[i+1]s[i] > s[i+1],然后删除ii,相当于将后面的字母前移一个位置,直到删

ramay7 907

基于ESP32的智能无线广播系统开发博客

通过本项目的开发,我们成功地实现了基于ESP32的智能无线广播系统。该系统不仅具备传统广播的功能,还实现了通过Wi-Fi无线传输音频、实时广播和智能控制等多种先进功能。未来,随着技术的进一步发展,我们还可以扩展更多功能,如智能推荐广播内容、支持语音识别和控制等。希望本项目能够为嵌入式开发人员提供一些思路和参考,帮助大家在实际开发中更好地应用ESP32平台,开发出更加智能和实用的无线广播系统。

2201_76125393的博客 423

HDU 3183 A Magic Lamp 【贪心】

传送门:HDU 3183 A Magic Lamp Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Problem Description Kiki likes traveling. One day she finds a magic lamp, unfortunately...

Waiting For You 199

大学计算 - 方程求解 实训答案 第3关

【代码】大学计算 - 方程求解 实训答案 第3关。

2403_89314916的博客 106

Qt c++ llama.cpp 运行 LLaMA-3-8B 中文对话机器人(多模态输入)

助手:

寒寒豆豆软件公司的博客 218

HDU-3183 A Magic Lamp

HDU-3183 A Magic Lamp 添加链接描述 贪心思想 需注意输入有0的情况 #include<bits/stdc++.h> using namespace std; int main () { char ch[1010]; int a[100000]; int m,i,j,k,len; memset(ch,0,sizeof(ch)); while(cin>>ch>>m){ memset(a,0,sizeof(a)); len=strlen(

qq_55788088的博客 144

从0到1用OpenClaw打造酒店收益管理系统:数据整合→AI策略迭代全链路落地实战

本文基于三亚某连锁海景酒店真实项目落地经验编写,系统上线3个月,酒店平均入住率从62%提升至80%,RevPAR(平均可售房收入)提升26%,淡季空置率降低46%,完全覆盖中小酒店全场景收益管理需求。本文配套OpenClaw全量Skill代码、工作流配置文件,可直接复用落地。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 491

HDU3183 A Magic Lamp【贪心】

A Magic Lamp http://acm.hdu.edu.cn/showproblem.php?pid=3183 Time Limit: 2000/1000 MS (Java/Others)Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 7201Accepted Submission(s): 2...

逐梦者 404

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

hdu 3183 A Magic Lamp RMQ ST 坐标最小值

hdu 3183 A Magic Lamp RMQ ST 坐标最小值 题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3183 题目大意: 从给定的串中挑出来m个数使得剩余的数字最小,串的序列不能改变 思路: 将问题转化为求在n个数中挑选n-m个数,使之最小。假设最极端的情况,所有最大的数字都在左侧,占据了m个位置,那么我们需要挑选的最...

ddqb3235的博客 191

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

HDU 3183 ——A Magic Lamp

Description Kiki likes traveling. One day she finds a magic lamp, unfortunately the genie in the lamp is not so kind. Kiki must answer a question, and then the genie will realize one of her dreams. T...

天际苍穹的博客 210

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

HDU-3183(A Magic Lamp)

题意:给定一个整数,可以删除m个数字,求原整数删除m个数字后变成的数最小是多少。 分析:设整数的长度为 n ,则删除完成之后的数的位数为 n-m,且无论如何删除完成之后的整数 的最高位肯定是原整数[0,m]区间中的一位,因为要求最小,所以第一位肯定是[0,m]区间中最小的一位,然后继续往后推就行了。 代码: #include<cmath> #include<c...

Joker & Liar的博客 1514

从Navicat到IDEA:一条龙搞定MySQL数据库与Java项目连接

本文详细介绍了如何从Navicat数据库设计到IDEA Java项目开发,实现MySQL与Java的高效连接与集成。通过Navicat进行专业数据库建模,结合Spring Boot和JDBC技术,打造无缝开发工作流,提升企业级应用开发效率。特别适合需要快速验证业务逻辑的团队。

weixin_33698823的博客 406

Hdu 3183 A Magic Lamp

题意:给你一个小于1000位的数和m,问从中删除m个数使得结果最小 RMQ算法。。。 思路:在n位数里删除m个,相当于找出n-m个位组成最小数 我们采用返回下标的方法,所以要把原来的 所以在区间 [0, m]里面找最小的数,对应的下标标号i 接着找区间 [i+1,m++]里面的最小数,对于下标为ii 接着找区间 [ii+1,m++]里面的最小数…… 这样就会找n-m个数了。区间这样

SeeYouAlways 709

HDU 3183 A Magic Lamp

这是一道ST算法的应用,使用st算法返回下标。 每次取出(i+1,m+j)区间内的最小数  i为前一次取出的最小值下标。 m为题目中要求取出的数字个数(注:是题目中要求的取出的数字,而不是我们取出的最小数)  。j表示当前取第几个数字(1 。。。。n)。 A Magic Lamp Time Limit: 2000/1000 MS (Java/Others)    Memory Limit:

641

hdu3183—A Magic Lamp(RMQ,贪心)

题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3183 A Magic Lamp Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Submission(s): 4071    Accepted Submis

zhiyuanjiang的博客 364

HDU - 3183 (A Magic Lamp)

题目连接 题意: 题意:不能改变数字序列的顺序,从n个数中删除m个,输出删除后最小的数 数据范围: (m<n<=1000)输出忽略前导0; 思路: 用一个栈,然后然后如果栈顶元素大于s [ i ]就弹出栈顶元素(删除该数),一直循环,如果s [ i ] 小于栈顶元素或者栈为空,压入栈,这样我们的栈到最后维护了一个单调递增的...

Harington的博客 291

HDU-3183-A Magic Lamp

3183-A Magic Lamp 题目大意:求给出的数字num,删去k位之后,所能得到的最小值 题目思路:刚开始乍一看,觉得是删去最大的k个数字就可以。但WA了,因为比如456302420,删去最大的4个数字之后是30220。 实际上,删除前面4个数字之后,剩下的02420更小。

Linoy 1245
上一篇: poj 1979 Red and Black (简单裸搜索)
下一篇: Codeforces Round #228 (Div. 1) A. Fox and Box Accumulation
雨狮子
博客等级 码龄12年 24粉丝 185原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值