NBUT 1181 Big Mouth of Abyss - Kog'Maw(删k位留最大最小数)
题目链接:Click here~~
题意:
神一样的题意。第一遍读题完全没搞懂要干啥。
其实就是给一串数字,删除k位后,不改变原顺序,要求留下的数字最小。
解题思路:
假设原数字的长度为l,即我们需要保留 l-k 位。
由感性认识,我们知道当高位数字越小时,所得结果越小。
依据这个思路,我们采用最简单的方法,以从高位向低位的顺序,一位一位的来选择保留哪位。
对于选择每一位的时候,由于不能改变数字的原顺序,所以我们要考虑选择的范围,即要为后面的数字留下足够的位数。
比如第一次选择的时候,我们需要给后面留下 l-k-1 个位置,如果设最后的数字下标是 l-1 ,则我们只能选择区间 [0,k] 中的元素。
选择完后,我们还要记录它的位置q,因为在下一次选择的时候,我们要从上次选择的数字后面开始,即[q+1,k+1]中的元素。
一般化以后,可以先初始化q为-1,则选择的区间每次都是[q+1,k+i]。( i 表示现在选择的是第几位,最高位是0)
#include <stdio.h>
#include <string.h>
int main()
{int k,l,min;char s[10005],ans[10005];while(~scanf("%s%d",s,&k)){l = strlen(s);for(int i=0,q=-1;i<l-k;i++){min = '9'+1;for(int j=q+1;j<=k+i;j++){if(min > s[j])min = s[j] , q = j;}ans[i] = min;}ans[l-k] = '\0';puts(ans);}return 0;
}
同理,我们可以知道使留下的数字最大的解法。
#include <stdio.h>
#include <string.h>
int main()
{int k,l,max;char s[10005],ans[10005];while(~scanf("%s%d",s,&k)){l = strlen(s);for(int i=0,q=-1;i<l-k;i++){max = 0;for(int j=q+1;j<=k+i;j++)if(max < s[j])max = s[j] , q = j;ans[i] = max;}ans[l-k] = '\0';puts(ans);}return 0;
}
NBUT 1181 Big Mouth of Abyss - Kog'Maw(删k位留最大最小数)相关推荐
- NBOJ 1181 Big Mouth of Abyss - Kog'Maw
题目来源:http://ac.nbutoj.com/Problem/view.xhtml?id=1181 题意:前面说了一堆废话,就是说给你一个字符串,全部由数字组成,让你在里面删除n个数,最后得到的 ...
- iOS 搜索功能实现
本文主要讲述了如何使用UISearchController实现搜索栏,现在把实现思路和代码整理出来分享给iOS程序员兄弟们,希望给他们的开发工作带来帮助. 查看源代码 打印帮助 1 UISearc ...
- iOS开发——UISearchController实现搜索栏功能|阳和移动开发
原文链接http://www.mobile-open.com/2015/86290.html,有删节和改动. 原文主要讲述了如何使用UISearchController实现搜索栏,现在把实现思路和代码 ...
- iOS中 UISearchController 搜索栏 UI技术分享
iOS中 UISearchController 搜索栏 UI技术分享 [objc] view plain copy <p style="margin-top: 0px; margin- ...
- 单词 2012-01-19
mobilize [5mEubilaiz] v. 动员 mobilize mo.bi.lize AHD:[m½"b--lºz"] D.J.[6moub*7laiz] K.K.[6m ...
- 如何学好C语言--你的学渣朋友告诉你
光说不练假把式,光练不说傻把式,又练又说真把式. 真实感受,不是我不想学,是我真的不知道我哪里不会啊和得怎么做啊?本文作者当初就是这么废掉的 推荐两个练习的网站 (一)C语言网 https://www ...
- 个人 IP 实验室周复盘 · 第 18 期
大家好啊,我是大田. 今天来进行这一周的复盘「 7 月 4 日 - 7 月 9 日」,本周日更文章为: 1.用 Jmeter 工具做个小型压力测试 2.做接口测试都测什么?有哪些通用测试点? 3.接 ...
- 中通/圆通API接口 PHP 简单封装示例
圆通 API 接口 - 简单封装 PHP yto.api.php 文件 class YTO {private $_domain = 'http://opentestapi.yto.net.cn/ser ...
- # 2017年蓝桥杯省赛cc++本科B组试题
2017年蓝桥杯省赛c/c++本科B组试题 第一题:购物单 问题 小明刚刚找到工作,老板人很好,只是老板夫人很爱购物.老板忙的时候经常让小明帮忙到商场代为购物.小明很厌烦,但又不好推辞. 这不,XX大 ...
最新文章
- c语言多线程转python多线程,真正的python 多线程!一个修饰符让你的多线程和C语言一样快...
- 从AVL树的定义出发,一步步推导出旋转的方案。
- 【LUOGU P1220】关路灯(区间dp)
- 安卓2.2刷机包_老用户福音 努比亚为红魔电竞手机和Z17用户更新安卓9.0
- 卷起来了!DeepMind发布媲美普通程序员的AlphaCode,同日OpenAI神经数学证明器拿下奥数题...
- 安全模式下修复电脑故障
- import pyart时报错 ValueError: numpy.ndarray has the wrong size, try recompiling.
- 阶段1 语言基础+高级_1-3-Java语言高级_05-异常与多线程_第4节 等待唤醒机制_6_等待唤醒机制概述...
- 现实世界的Windows Azure:采访Gizmox 研发中心的副总裁Itzik Spitzen先生
- python:for循环修改list的值,应使用range
- 计算机多媒体基础应用,《计算机应用基础》典型多媒体课件简介
- 梅捷512G固态拆机+得一微YS9082HP量产教程+YS9082HP开卡工具
- ping localhost
- Python爬虫实践:优志愿 院校列表
- 【2022考研】 肖四大题(马原第一套)背诵笔记
- PS制作可爱的花豹头像
- oracle修改表某列字段长度
- Node.js | 从前端到全栈的必经之路
- android wear手表6,Android Wear(手表)开发
- html使用highcharts绘制饼图,饼图.html · 赵文博/Highcharts - Gitee.com
热门文章
- [博学谷学习记录]超强总结,用心分享|第07节 常用的API-----笔记篇
- 软件测试的未来:2021年需要关注的15大软件测试趋势
- python snmp_cmds库snmpwalk 中文正常显示方法
- mysql导出数据库1146_MySQL复制出错 Last_SQL_Errno:1146的解决方法
- XElement.Load 需要释放吗_蚕茧能清洁毛孔吗 蚕茧护肤的正确方法速Get√|蚕茧|清洁-爱美·BEAUTY...
- 美育在计算机教育中应用,浅谈在小学信息技术课堂中有效实施美育.
- MHA-node MHA-manger相关依赖包安装
- java学习路线(阿里p6)
- 我用MOS管做开关管却不能关闭?
- 片上总线Wishbone 学习(一)片上总线综述