hud 3183
题意:给出n个数字的字符串,要求你删除m个数字后,得到的数字最小。
分析:删除m个,就是选n-m个,而且,选的第一个数,肯定在(0—(n-m-1))中,第二个就在(第一个的下一位—(n-m-2)中。就这样,RMQ选出最小就可以了。
代码:
#include<stdio.h>
#include<iostream>
#include<math.h>
#include<algorithm>
#include<string.h>
using namespace std;
char str[];
int dp[][];//存下标
int Min(int x,int y)
{
if(str[x]>str[y])
return y;
else
return x;
}
void RMQ_ST(int n)
{
for(int i=;i<n;i++)
dp[i][]=i;
for(int j=;(<<j)<=n;j++)
for(int i=;i+(<<j)-<n;i++)
{
dp[i][j]=Min(dp[i][j-],dp[i+(<<(j-))][j-]);
}
}
int RMQ_Q(int L,int R)
{
int k=(int)(log(R-L+1.0)/log(2.0));
return Min(dp[L][k],dp[R+-(<<k)][k]);
}
int main()
{
int m;
while(~scanf("%s%d",str,&m))
{
int len=strlen(str);
RMQ_ST(len);
m=len-m;//选n-m个
int t=;
int top=;
int ant[];
memset(ant,-,sizeof(ant));
while(m--)//依次选
{
int k=RMQ_Q(top,len-m-);
ant[t]=str[k];
top=k+;
t++;
}
int f=;
while(ant[f]=='')f++;
if(f==t)printf("");
while(f<t)//输出
{
printf("%c",ant[f]);
f++;
}
printf("\n");
}
}
hud 3183的更多相关文章
- 如何用Unity GUI制作HUD
		若知其所以然,自然知其然. HUD是指平视显示器,就是套在脸上,和你的眼睛固定在一起,HUD的意思就是界面咯,一般我们说HUD特指把3D空间中的界面的某些信息(比如血条,伤害之类)的贴在界面上,对应3 ... 
- xamarin UWP平台下 HUD 自定义弹窗
		在我的上一篇博客中我写了一个在xamarin的UWP平台下的自定义弹窗控件.在上篇文章中介绍了一种弹窗的写法,但在实际应用中发现了该方法的不足: 1.当弹窗出现后,我们拖动整个窗口大小的时候,弹窗的窗 ... 
- xamarin UWP设置HUD加载功能
		使用xamarin开发的时候经常用到加载HUD功能,就是我们常见的一个加载中的动作,Android 下使用 AndHUD , iOS 下使用 BTProgressHUD, 这两个在在 NuGet 上都 ... 
- hdu 3183(贪心)
		题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=3183 思路:比较前后两个相邻的字符,如果前面一个字符大于后面一个字符,就把它去掉. #include ... 
- OSG中的HUD
		OSG中的HUD 所谓HUD节点,说白了就是无论三维场景中的内容怎么改变,它都能在屏幕上固定位置显示的节点. 实现要点: 关闭光照,不受场景光照影响,所有内容以同一亮度显示 关闭深度测试 调整渲染顺序 ... 
- CREATE A ENERGY / HEALTH BAR HUD
		Now then, let's get started. 1. Open the Play scene which you had created in the previous post. If y ... 
- iOS之UI--指示器HUD的创建和设置
		指示器的创建和设置 渐变动画 描述: 使用label就能制作指示器,原理:就是让label以动画的形式慢慢显示和消失 最好是半透明的 指示器有时候也被称为:HUD,遮盖,蒙版 思路步骤: 1.先在st ... 
- NGUI:HUD Text(头顶伤害漂浮文字)
		HUD Text 很早之前就有闻于NGUI中的HUD Text插件,今天得以尝试,看了会儿官方的文档,楞是没给看明白,官方的ReadMe.txt写的使用方法如下: 官网Usage 1. Attach ... 
- iOS开发必备HUD(透明指示层)
		iOS开发必备HUD(透明指示层) 字数421 阅读2123 评论1 喜欢51 1.MBProgressHUD GitHub地址:https://github.com/jdg/MBProgressHU ... 
随机推荐
- 单机zookeeper部署伪集群
			1.zookeeper介绍 ZooKeeper 是一个为分布式应用所设计的分布的.开源的协调服务.分布式的应用可以建立在同步.配置管理.分组和命名等服务的更高级别的实现的基础之上. ZooKeeper ... 
- 洛谷P1629 邮递员送信 最短路-Djistra
			先上一波题目qwq https://www.luogu.org/problem/P1629· 复习了一波 dijstra 的 priority_queue(优先队列)优化的写法 tips: 求单项路中 ... 
- JavaScript去除数组中重复的数字
			<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ... 
- 那些年踩过的eleUl上传图片的坑?
			html : <el-upload :headers="header" // 请求头参数(一般包含token,认证参数authorization) :data="u ... 
- Python第九节 条件和循环
			while...else 当满足while循环条件的时候执行循环体内的语句,否则执行else的语句例如下面的例子: count = 1 while count <= 5: print(" ... 
- Windows 下安装 nvm 管理 nodejs 版本
			摘自https://segmentfault.com/a/1190000007612011 1. 下载安装与使用 Github: Download nvm-windows --- nvm-setup. ... 
- 文件对比工具  diff  cmp  patch(没弄完)  pr
			diff不仅可以对比文件,而且可以对比文件夹中的文件. 解析: diff用在比对两个文件的差异,并且是以行为单位进行对比.一般用在ascii纯文本档的对比上. 例 在tmp中创建一个testpw文件夹 ... 
- Codeforces 1140F 线段树 分治 并查集
			题意及思路:https://blog.csdn.net/u013534123/article/details/89010251 之前cf有一个和这个相似的题,不过那个题只有合并操作,没有删除操作,直接 ... 
- HTTP、HTTPS等常用服务的默认端口号
			口号标识了一个主机上进行通信的不同的应用程序. 1.HTTP协议代理服务器常用端口号:80/8080/3128/8081/9098 2.SOCKS代理协议服务器常用端口号:1080 3.FTP(文件传 ... 
- 【TJOI/HEOI2016】求和
			题面 题目分析 \[ \begin{split} \sum_{i=0}^n\sum_{j=0}^iS(i,j)\cdot 2^j\cdot j!&=\sum_{j=0}^n2^j\cdot j ... 
