day37 贪心算法part6

738. 单调递增的数字

中等
提示
当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个整数是单调递增的。

给定一个整数 n ,返回 小于或等于 n 的最大数字,且数字呈 单调递增 。

不知道怎么讲思路……以9287举例,从后往前遍历,87肯定不是递增的,那么是递增又满足小于87的最大数应该是79,然后变成9279,轮到27不满足,变成19,现在是9119,现在91不满足,变成89,最后满足的是8999。总之就是前一位减一,后一位变9.

难点:如何提取到每一位的数字并方便修改?最好把每一位拿下来,放到一个数组里,方便修改。

class Solution {public int monotoneIncreasingDigits(int n) {String s = String.valueOf(n); //装箱char[] chars = s.toCharArray();// flag用来标记赋值9从哪里开始// 设置为这个默认值,为了防止第二个for循环在flag没有被赋值的情况下执行int flag = chars.length;for (int i = chars.length - 1; i > 0; i--) { // 后往前遍历if ( chars[i] < chars[i - 1]) {chars[i - 1]--;// 标记不递增的地方是从哪里开始的,在那之后的都要变成9// 比如 93232,会被改为 89999, 100,会被改为99flag = i; }}// 省略了下面这个不行,遇到100这种,过不去for (int i = flag; i < chars.length; i++){chars[i] = '9';}return Integer.parseInt(new String(chars)); // 或者 Integer.parseInt(String.valueOf(chars))}
}

968. 监控二叉树

困难
给定一个二叉树,我们在树的节点上安装摄像头。

节点上的每个摄影头都可以监视其父对象、自身及其直接子对象。

计算监控树的所有节点所需的最小摄像头数量。

听卡哥的建议,这个题一刷先跳过

贪心总结:

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/521792.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

基于Java的生活废品回收系统(Vue.js+SpringBoot)

目录 一、摘要1.1 项目介绍1.2 项目录屏 二、研究内容三、界面展示3.1 登录注册3.2 资源类型&资源品类模块3.3 回收机构模块3.4 资源求购/出售/交易单模块3.5 客服咨询模块 四、免责说明 一、摘要 1.1 项目介绍 生活废品回收系统是可持续发展的解决方案&#xff0c;旨在鼓…

python将地理数据导出到postgis

数据格式&#xff1a; 创建test数据库 注意要选择postgis范本 执行代码 import psycopg2 from psycopg2.extras import RealDictCursor from shapely.wkt import dumps from shapely.geometry import Polygon# 数据 data [{name: a,geom:104.059962,30.647005;104.06156,30.…

TinTin DESTINATION MOON|开发者不容错过的 Web3 线下活动来啦!

还记得去年 9 月 17 日的上海吗&#xff1f;「DESTINATION MOON: Web3 Dev Summit Shanghai 2023」迎来了数百名 Web3 行业爱好者的关注和参与。4 场主题演讲、3 场圆桌讨论&#xff0c;近 20 名创新者、开发者、投资人和研究员围绕公链生态、Layer2 竞争、DID、ZKP、安全等热点…

VsCode中使用Anaconda中的python环境

1、今天在新的电脑上安装了VsCode和Anaconda&#xff0c;但是在VsCode却选择不了python的环境&#xff0c;期望结果是下面这样的 2、接着在网上百度&#xff0c;找到了方法&#xff0c;具体方法如下&#xff1a; 2.1需要先在Extensions中安装python 2.2再使用ctrlshiftP后使用…

基于PHP的音乐网站后台管理系统设计与实现

目 录 摘 要 I Abstract II 引 言 3 1 相关技术 5 1.1 PHP技术 5 1.2 MySQL技术 5 1.3ThinkPHP框架 5 1.4 Apache技术 6 1.5 本章小结 6 2系统分析 7 2.1 功能需求 7 2.2 用例分析 7 2.3系统可行性分析 9 2.4 本章小结 10 3 系统设计 11 3.1 总体设计 11 3.2 数据库设计 12 3.…

简单认证个腾讯音乐人教程

认证腾讯音乐人&#xff0c;尊享尊贵头衔&#xff01;&#xff01;你的不凡让世界听见 成功以后可以在QQ音乐、酷狗、全民K歌等等搜到自己歌曲 步骤如下&#xff1a; 首先打开官网&#xff1a;https://y.tencentmusic.com/ 选择音乐人&#xff0c;点击立即入住 如下图点击&…

电脑如何快速生成图片二维码?在线图片生码的制作步骤

多张图片在电脑上如何生成二维码之后预览呢&#xff1f;现在很多场景下都会发现扫码会展现很多的图片&#xff0c;通过手机来获取图片内容&#xff0c;那么图片放入二维码中的制作方法是什么样的呢&#xff1f;下面就通过本篇文章来给大家介绍图片二维码在线制作的方法及步骤&a…

2024年新版CMS内容管理使用,不用回退老版本 使用最新小程序云开发cms内容模型

一&#xff0c;问题描述 最近越来越多的同学找石头哥&#xff0c;说cms用不了&#xff0c;其实是小程序官方最近又搞大动作了&#xff0c;偷偷的升级的云开发cms&#xff08;内容管理&#xff09;以下都称cms&#xff0c;不升级不要紧&#xff0c;这一升级&#xff0c;就导致我…

文献学习-14-一种用于高精度微创手术的纤维机器人

Authors: Mohamed E. M. K. Abdelaziz1,2 †, Jinshi Zhao1,3 †, Bruno Gil Rosa1,2 , Hyun-Taek Lee4 , Daniel Simon3,5 , Khushi Vyas1,2 , Bing Li6,7 , Hanifa Koguna3 , Yue Li1 , Ali Anil Demircali3 , Huseyin Uvet8 , Gulsum Gencoglan9,10, Arzu Akcay11,12, Moham…

js运行,控制台显示乱码

"code-runner.executorMap": {"javascript": "C:\\Program Files\\nodejs\\node.exe" //node.js的安装路径} 参考文章&#xff1a;https://blog.csdn.net/m0_63785629/article/details/129432129

无限debugger的几种处理方式

不少网站会在代码中加入‘debugger’&#xff0c;使你F12时一直卡在debugger&#xff0c;这种措施会让新手朋友束手无策。 js中创建debugger的方式有很多&#xff0c;基础的形式有&#xff1a; ①直接创建debugger debugger; ②通过eval创建debugger&#xff08;在虚拟机中…

VR数字化线上展馆降低企业投入成本和周期

VR云展会是一种全新的展览形式&#xff0c;它利用虚拟现实技术&#xff0c;将实体展览搬到线上&#xff0c;让观众可以在家中就能参观各种展览。这种新型的展览方式有许多亮点&#xff0c;下面就来详细介绍一下。 首先&#xff0c;VR云展会打破了地域限制。传统的实体展览通常只…