当前位置: 首页 > news >正文

网站建设使用的什么软件有哪些优质网站策划

网站建设使用的什么软件有哪些,优质网站策划,怎样给网站做超链接,泉州做网站优化的公司问题描述 给定一个高精度的正整数 n#xff08;n≤1000 位#xff09;#xff0c;需要删除其中任意 s 个数字#xff0c;使得剩下的数字按原左右顺序组成一个新的正整数#xff0c;并且这个新的正整数最小。例如#xff0c;对于数字 153748#xff0c;删除 2 个数字后n≤1000 位需要删除其中任意 s 个数字使得剩下的数字按原左右顺序组成一个新的正整数并且这个新的正整数最小。例如对于数字 153748删除 2 个数字后最小的数是 1348。 解题思路 1. 贪心算法 要解决这个问题我们可以使用贪心算法。贪心算法在每一步选择中都采取在当前状态下最好或最优即最有利的选择从而希望导致结果是全局最好或最优的。 2. 维护单调递增栈 我们可以通过维护一个单调递增的栈来实现这个目标。具体步骤如下 2.1 初始化栈 创建一个空栈 stack用于存储最终结果中的数字。 2.2 遍历每个数字 遍历输入的高精度正整数 n 的每一位数字 num。 2.3 维护单调递增栈 弹出条件当栈不为空stack且还需要删除数字s 0且栈顶元素大于当前数字stack[-1] num时弹出栈顶元素并减少 s 的值。这样做的目的是尽可能地让结果数的高位更小从而使得整个数更小。 入栈操作将当前数字 num 入栈。这一步是为了保留当前数字以便后续继续判断。 2.4 处理剩余的删除操作 遍历结束后如果 s 还大于0说明原数是单调递增的。在这种情况下直接去掉末尾的 s 个数字即可。因为从末尾去掉数字对结果数的影响最小。 2.5 拼接结果并处理前导0 拼接结果将栈中的数字拼接成一个字符串。 处理前导0使用 lstrip(0) 去掉前导0。如果去掉前导0后字符串为空即原数删除后只剩下0则返回 0。 3. 示例解释 以 n 153748 和 s 2 为例详细说明每一步的操作 初始化栈stack []。 遍历每一位数字 num 1栈为空直接入栈。stack [1]。 num 5栈顶元素 1 小于 5直接入栈。stack [1, 5]。 num 3栈顶元素 5 大于 3弹出 5s 减1。stack [1]。然后 3 入栈。stack [1, 3]。 num 7栈顶元素 3 小于 7直接入栈。stack [1, 3, 7]。 num 4栈顶元素 7 大于 4弹出 7s 减1。stack [1, 3]。然后 4 入栈。stack [1, 3, 4]。 num 8栈顶元素 4 小于 8直接入栈。stack [1, 3, 4, 8]。 遍历结束后s 为0不需要再处理。 拼接结果并处理前导0.join(stack).lstrip(0)结果为 1348。 最终结果为 1348这是删除2个数字后得到的最小数。 4. 代码实现 def min_number_after_delete(n, s):删除s个数字后得到的最小数:param n: 原始高精度正整数字符串形式:param s: 需要删除的数字个数:return: 删除s个数字后得到的最小数字符串形式stack []# 遍历每个数字for num in n:# 当栈不为空且s大于0且栈顶元素大于当前数字时弹出栈顶元素while stack and s 0 and stack[-1] num:stack.pop()s - 1# 当前数字入栈stack.append(num)# 如果s还大于0说明原数是单调递增的直接去掉末尾的s个数字即可if s 0:stack stack[:-s]# 将栈中的数字拼接成字符串并去掉前导0return .join(stack).lstrip(0) or 0# 示例 n 153748 s 2 print(min_number_after_delete(n, s)) # 输出1348n 1087 s 1 print(min_number_after_delete(n, s)) # 输出87 5. 总结 通过维护一个单调递增的栈我们可以有效地找到删除 s 个数字后得到的最小数。这种方法的时间复杂度为 O(n)其中 n 是输入数字的长度因为每个数字最多只会被入栈和出栈一次。希望这个解释能帮助你更好地理解这个问题的解法。如果有任何疑问欢迎继续提问。
http://www.hkea.cn/news/14284430/

相关文章:

  • 做网站低价一整套室内设计方案ppt
  • 上海备案证查询网站查询系统手机网站建设基本流程图
  • 个人征信系统查询官网wordpress 自动seo插件
  • 逸阳网站建设的目标wordpress文章目录页面
  • 网站建设 数据可视化网站开发考什么证
  • 爱发电怎么做网站西安企业网站建设多少钱
  • 如何实现网站开发手机验证码centos 安装wordpress
  • 西安网站微信开发企业用什么邮箱比较好
  • 华为云做网站网站开发工期安排表
  • 正规的网站制作平台北京百度seo点击器
  • 南通网站seo报价企业网站推广计划书
  • 中企建网站dede做网站
  • 哪个网站推广好wordpress 4.7.1
  • 网站打开速度太慢做网站收录
  • 环境艺术设计网站推荐做一个学校网站怎么做
  • 自己做网站怎么上传到网上网银在线北京网络科技有限公司
  • 我学的 网站开发 能进华为公司么国家知识产权专利网官网
  • 做包装看什么网站别人的网站是怎么找到的
  • 台州网站搭建智慧管网建设方案
  • 网站建设自学建站视频教程网站解析时候让做别名
  • 南宁有做网站的公司吗wordpress编辑器失效
  • 国际网站浏览器网站建设怎么记账
  • 网站里面如何在新闻列表上显示hot中山网站建设哪家便宜
  • 建网站多少钱 优帮云淘宝领卷网站什么做
  • 网站后台模板关联自己做的网站怎么做祝福网站
  • 顺义区做网站wordpress防止
  • 吉林网站建设哪家有工程招聘app都有哪些
  • 有没有可以做游戏的网站吗建设网站费用多少钱
  • 网站做一些流量互换seo标题优化是什么意思
  • wordpress多站点版网站开发 绩效考核