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

外包做的网站 需要要源代码吗上海seo网站优化软件

外包做的网站 需要要源代码吗,上海seo网站优化软件,淘宝上找人做网站,书店网站建设规划书文章目录 738.单调递增的数字思路分析代码实现 738.单调递增的数字 题目链接🔥🔥 给定一个非负整数 N,找出小于或等于 N 的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增。 (当且仅当每个相邻位数上的…

文章目录

  • 738.单调递增的数字
    • 思路分析
    • 代码实现

738.单调递增的数字

题目链接🔥🔥
给定一个非负整数 N,找出小于或等于 N 的最大的整数,同时这个整数需要满足其各个位数上的数字是单调递增。
(当且仅当每个相邻位数上的数字 x 和 y 满足 x <= y 时,我们称这个整数是单调递增的。)

示例 1:
输入: N = 10
输出: 9

示例 2:
输入: N = 1234
输出: 1234

示例 3:
输入: N = 332
输出: 299
说明: N 是在 [0, 10^9] 范围内的一个整数。

思路分析

暴力解法会超时。
题目要求小于等于N的最大单调递增的整数,那么拿一个两位的数字来举例。

例如:98,一旦出现strNum[i - 1] > strNum[i]的情况(非单调递增),首先想让strNum[i - 1]–,然后strNum[i]给为9,这样这个整数就是89,即小于98的最大的单调递增整数。

这一点如果想清楚了,这道题就好办了。

此时是从前向后遍历还是从后向前遍历呢?

从前向后遍历的话,遇到strNum[i - 1] > strNum[i]的情况,让strNum[i - 1]减一,但此时如果strNum[i - 1]减一了,可能又小于strNum[i - 2]。

这么说有点抽象,举个例子,数字:332,从前向后遍历的话,那么就把变成了329,此时2又小于了第一位的3了,真正的结果应该是299。

那么从后向前遍历,就可以重复利用上次比较得出的结果了,从后向前遍历332的数值变化为:332 -> 329 -> 299

确定了遍历顺序之后,那么此时局部最优就可以推出全局,找不出反例,试试贪心。

代码实现

C++代码如下:

class Solution {
public:int monotoneIncreasingDigits(int N) {string strNum = to_string(N);// flag用来标记赋值9从哪里开始// 设置为这个默认值,为了防止第二个for循环在flag没有被赋值的情况下执行int flag = strNum.size();for (int i = strNum.size() - 1; i > 0; i--) {if (strNum[i - 1] > strNum[i] ) {flag = i;strNum[i - 1]--;}}for (int i = flag; i < strNum.size(); i++) {strNum[i] = '9';}return stoi(strNum);}
};

我的:
我的是从前向后遍历的,用一个maxindex来记录目前出现过的最大的数(如果有332这种,就记录第一个3,这样结果是299,否则结果是329就不对了),其实maxindex就是记录一旦出现递减的数,该从哪里开始自减。

class Solution {
public:int monotoneIncreasingDigits(int n) {string strn=to_string(n);int maxindex=0;for(int i=1;i<strn.size();i++){if(strn[i]>strn[i-1]) maxindex=i;if(strn[i]<strn[i-1]){strn[maxindex]--;for(int j=maxindex+1;j<strn.size();j++) strn[j]='9';}}int result=stoi(strn);return result;}
};

http://www.yidumall.com/news/21242.html

相关文章:

  • 多媒体网页设计如何优化网页
  • 做一个网站需要多少时间做网销的一天都在干嘛
  • 网站开发进程报告免费关键词搜索工具
  • 哈尔滨模板建站多少钱怎样创建网站或者网址
  • 手机网站安装许昌网站推广公司
  • 崇文网站建设沙洋县seo优化排名价格
  • 做网站公司需要什么条件怎么弄属于自己的网站
  • 做网站购买服务器吗aso优化技巧
  • 青岛做网站的公司哪个好百度竞价什么时候开始的
  • 衡水做wap网站的公司seo赚钱培训
  • wordpress 动态网站模板下载地址整合营销传播理论
  • 太原网站建设解决方案网站很卡如何优化
  • wordpress 屏蔽国内ipseo基础视频教程
  • wordpress搜索功能主题西安网站seo价格
  • 网站维护升级页面下载百度软件
  • 嘉兴外贸网站建设百度识图鉴你所见
  • 广州做网站哪里好网络营销的四大基础理论
  • 邢台网站开发公司排名优化课程
  • wordpress转移服务器seo的优点有哪些
  • 甘肃省建设工程网站泉州全网营销优化
  • 网站推广公司百度地图网页版进入
  • vps网站权限信阳百度推广公司电话
  • 网站网页制作教程免费外链生成器
  • 怎么给网站做跳转百度集团官网
  • 国外成人做视频网站网站建设技术解决方案
  • 珠海百度seo代理青岛自动seo
  • 金乡县网站开发网站域名购买
  • 做蔬菜批发的网站seo优化搜索结果
  • tk域名官方网站安装百度到手机桌面
  • 在中国建设工程造价管理协会网站域名大全查询