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

(LeetCode 每日一题) 1432. 改变一个整数能得到的最大差值(贪心)

题目:1432. 改变一个整数能得到的最大差值

在这里插入图片描述

在这里插入图片描述
思路:让值最大,从左到右,让第一个不为’9’的数字变为’9’。
同理,让值最小,从左到右,让第一个不为‘0’和’1’的数字变为‘0’或’1’。如果第一个不为‘0’和’1’的数字不是第一个,那变为’0’,是第一个就变为’1’。

C++版本:

class Solution {
public:int maxDiff(int num) {string s=to_string(num);int i=0;for(;i<s.size();i++){if(s[i]!='9') break;}if(i!=s.size()){char c=s[i];for(;i<s.size();i++){if(s[i]==c){s[i]='9';}}}int mx=stoi(s);s=to_string(num);i=0;for(;i<s.size();i++){if(s[i]=='1'||s[i]=='0') continue;break;}if(i!=s.size()){char c=s[i];char t='1';if(i!=0) t='0';for(;i<s.size();i++){if(s[i]==c){s[i]=t;}}}int mn=stoi(s);return mx-mn;}
};

JAVA版本:

class Solution {public int maxDiff(int num) {String s=String.valueOf(num);char[] c=s.toCharArray();int i=0;for(;i<c.length;i++){if(c[i]!='9') break;}if(i!=c.length){char tmp=c[i];for(;i<c.length;i++){if(c[i]==tmp){c[i]='9';}}}int mx=Integer.parseInt(new String(c));c=s.toCharArray();i=0;for(;i<c.length;i++){if(c[i]=='1'||c[i]=='0') continue;break;}if(i!=c.length){char cc=c[i];char tmp ='1';if(i!=0) tmp='0';for(;i<c.length;i++){if(c[i]==cc){c[i]=tmp;}}}int mn=Integer.parseInt(new String(c));return mx-mn;}
}

Go版本:

func maxDiff(num int) int {s:=strconv.Itoa(num)c:=[]byte(s)i:=0for ;i<len(c);i++ {if c[i]!='9' {break;}}if i!=len(c) {t:=c[i]for ;i<len(c);i++ {if t==c[i] {c[i]='9'}}}mx,_:=strconv.Atoi(string(c))c=[]byte(s)i=0for ;i<len(c);i++ {if c[i]=='1'||c[i]=='0' {continue;}break;}if i!=len(c) {t:=c[i]cc:='1'if i!=0 {cc='0'}for ;i<len(c);i++ {if t==c[i] {c[i]=byte(cc)}}}mn,_:=strconv.Atoi(string(c))return mx-mn
}
http://www.xdnf.cn/news/14362.html

相关文章:

  • React组件通信——context(提供者/消费者)
  • MySQL常用函数详解之字符串函数
  • nohz_full 参数对内核软硬锁检测机制的影响分析
  • 嵌入式学习笔记 - SH79F6441 堆栈栈顶可以是片上内部RAM(00H-FFH)的任意地址怎么理解
  • (91)课113:存储函数与存储过程的区别总结。
  • DP刷题练习(三)
  • Golang 解大整数乘法
  • Python Pillow 库详解文档
  • pythton 语言的独特语法
  • Axure应用交互设计:多种类型元件实现新增中继器数据
  • 【springcloud】快速搭建一套分布式服务springcloudalibaba(五)
  • Python爬虫实战:研究Mr. Queue相关技术
  • 【Java SE】类和对象(3)
  • Kafka源码P2-生产者缓冲区
  • 基于大模型预测缺铁性贫血的综合技术方案大纲
  • 记录一次 Oracle 表空间不足问题的解决过程
  • Linux进程间通信(上)
  • Proteus8.17-LCD12864液晶屏幕仿真模型
  • 华为OD机试-考勤信息-双指针(JAVA 2025B卷)
  • AI是什么?大模型、语料、训练、推理、机器学习、神经网络等专业名词如何关联
  • 基于docker的nocobase本地部署流程
  • CPU的异常处理
  • PC16550 UART接收中断处理完整示例代码
  • 134-135Elements-UI组件库
  • 03- 六自由度串联机械臂(ABB)动力学分析
  • SoftMax 函数
  • Unity基础-范围检测
  • Redis全面深入学习目录
  • 求数组中最长单调不降连续子数组的长度
  • stm32 f103c8t6仿真 串口收发测试