蓝桥杯寒假集训第一天(删除字符)
2023-02-18 16:47:31 时间
没有白走的路,每一步都算数???
题目描述:
输入一个字符串和一个给定的数字,要求从字符串中删除指定数字的字符,得到一个字典序最小的字符串。
输入描述:
第一行:
一个字符串,字符串的长度不大于100。
第二行:
一个数字,数字的长度,小于字符串的长度。
输出描述:
输出最后的字符串占一行。
样例输入输出:
样例输入:
LANQIAO 3
样例输出:
AIAO
代码算法逻辑:
- 删除字符,每次删除的是整个字符串中左边字母较大的一个。因为越往左边字典序也就越大。
- 每一次删掉新字符串最大的字母,删除后,退出循环,执行下一次循环,依次类推,既可以得到第n次后得到的字典序最小的字符串
- 最后的输出结果,整理一下即可
L = list(input())
n = int(input())
for i in range(n):
for j in range(len(L)-1):
if L[j]>L[j+1]:
pop(i)
break
s = ''.join(L)
print(s)
时间测试:
空间测试:
附上代码:
import os
import sys
import time
L = list(input())
n = int(input())
t1 = time.time()
for i in range(n):
for j in range(len(L)-1):
if L[j]>L[j+1]:
L.pop(j)
break
##print(L)
s = ''.join(L)
memory_L = sys.getsizeof(L)
memory_n = sys.getsizeof(n)
memory_s = sys.getsizeof(s)
print(memory_L+memory_n+memory_s,'字节')
t2 = time.time()
print(s)
print(t2-t1)
相关文章
- 动态代理
- 信号量控制线程顺序
- socket基本连接
- 统计大文件中字符串出现的次数
- 单向循环链表-链表(单链表)的基本操作及C语言实现
- 给大家介绍一个很实用的工具——Slidev
- 进程调度策略
- 虹科分享 | 网络仿真器 | 缓解远程员工绩效问题的 5 个简单步骤
- 内存溢出、内存泄露、野指针、空指针
- 给你的眼睛也放个假
- 一文吃透哈希
- 线程交替打印
- 今天给大家推荐的是一款非常强大的开源堡垒机,JumpServer
- 我是没想到这个公司的笔试编程题这么难
- java解释器虚拟机-java 虚拟机内存/线程共享情况
- 为什么time_wait状态默认是2MSL
- 3d打相机-创想三维:3D扫描在3D打印机上的运用
- 字节一道笔试题记录
- css易忘知识点换行
- java解释器虚拟机-Java代码如何运行在Java虚拟机中