首页 > 其他分享 >将整数转换为两个无零整数的和

将整数转换为两个无零整数的和

时间:2023-08-15 10:02:34浏览次数:28  
标签:10 转换 示例 int 整数 num 无零 return

「无零整数」是十进制表示中 不含任何 0 的正整数。

给你一个整数 n,请你返回一个 由两个整数组成的列表 [A, B],满足:

A 和 B 都是无零整数
A + B = n
题目数据保证至少有一个有效的解决方案。

如果存在多个有效解决方案,你可以返回其中任意一个。

示例 1:

输入:n = 2
输出:[1,1]
解释:A = 1, B = 1. A + B = n 并且 A 和 B 的十进制表示形式都不包含任何 0 。
示例 2:

输入:n = 11
输出:[2,9]
示例 3:

输入:n = 10000
输出:[1,9999]
示例 4:

输入:n = 69
输出:[1,68]
示例 5:

输入:n = 1010
输出:[11,999]

class Solution {
    public int[] getNoZeroIntegers(int n) {
        //更新i和j值,判断是否含有0
        int i = 1;
        int j = n - i;
        while(true){
            if(!String.valueOf(i).contains("0")&&!String.valueOf(j).contains("0")){
                return new int[]{i,j};
            }
            i++;
            j = n-i;
        }
    }
}

优化,直接找数字

class Solution {
    public int[] getNoZeroIntegers(int n) {
        int a = 1;
        int b = n - a;
        while (haveZero(b)) {
            //a按a的10倍+1
            if (a * 10 + 1 < n) {
                a = a * 10 + 1;
                if (a % 10 == 0) {
                     a += 1;
                }
            } else {
                a += 1;
                if (a % 10 == 0) {
                    a += 1;
                }
            }
            b = n - a;
        }
        return new int[] {a, b};
    }
    //判断b是否有0,如果有0那么久相当于循环/10的数中有余数=0
    private boolean haveZero(int num) {
        while (num != 0) {
            if (num % 10 == 0) {
                return true;
            }
            num /= 10;
        }
        return false;
    }
}

标签:10,转换,示例,int,整数,num,无零,return
From: https://www.cnblogs.com/xiaochaofang/p/17630533.html

相关文章

  • JSON对象和字符串之间的相互转换
    比如我有两个变量,我要将a转换成字符串,将b转换成JSON对象:1vara={"name":"tom","sex":"男","age":"24"};23varb='{"name":"Mike","sex":"女","age":"29......
  • Go 语言类型转换
    packagemainimport"fmt"funcmain(){varsumint=17varcountint=5varmeanfloat32mean=float32(sum)/float32(count)fmt.Printf("mean的值为:%f\n",mean)}go不支持隐式转换类型错:packagemainimport"fmt"funcmain(......
  • 如何将Python代码转换为Goland
    本文将介绍如何将Python代码转换为Goland,包括转换工具、转换步骤和注意事项。1.转换工具目前市面上有很多Python到Go的转换工具,例如:Transcrypt:一个命令行工具,可以将Python代码转换为Go代码。PyGo:一个Python库,可以在Python代码中嵌入Go代码,从而实现Python到Go的转换。GoPy:一个Pytho......
  • LocalDateTime与LocalDate之间转换
    LocalDateTime与LocalDate之间转换//LocalDateTime转换LocalDateLocalDateTimenow2=LocalDateTime.now();LocalDateld2=now2.toLocalDate();System.out.println("lt2="+ld2);//LocalDate转换LocalDateTimeLocalDateld3=......
  • json字符串转换对象或列表,多了字段不会报错
    json字符串转换对象或列表,多了字段不会报错//DEMO1转换对象应用riskIdpublicclassItem{privateStringid;privateStringrate;publicItem(Stringid,Stringrate){this.id=id;this.rate=rate;}@Overridepubl......
  • 马尔可夫转换模型研究交通伤亡人数事故时间序列预测|附代码数据
    原文链接:http://tecdat.cn/?p=12227最近我们被客户要求撰写关于马尔可夫转换模型的研究报告,包括一些图形和统计输出。本文描述了R语言中马尔克夫转换模型的分析过程首先,对模拟数据集进行详细建模。接下来,将马尔可夫转换模型拟合到具有离散响应变量的真实数据集。用于验证对这些......
  • 内存受限下找出亿级整数集合中的不重复元素
    在大数据环境下,我们常常需要处理数量极其庞大的数据集,但由于内存大小的限制,无法直接加载到内存中进行操作。这时就需要设计适合内存受限环境的算法,来解决问题。本文将以在内存不足的情况下,找出亿级规模整数集合中的不重复元素为例,探讨一种基于BloomFilter的数据结构的解决方......
  • 模数转换器(ADC)AD7674ASTZRL、AD7622BCPZ适用于高动态数据采集
    一、AD7674是一款18位、800MSPS、电荷再分配、逐次逼近型寄存器(SAR)全差分模数转换器(ADC),采用5V单电源供电。该器件内置一个18位高速采样ADC、一个内部转换时钟、一个内部基准电压缓冲、纠错电路,以及串行和并行系统接口。器件优势:1、高分辨率、高吞吐量。AD7674是一款800kSPS......
  • BOSHIDA DC电源模块的高转换率
    BOSHIDADC电源模块的高转换率DC电源模块是将交流电转换为直流电供应设备使用的装置,是现代工业制造和电子产品中不可或缺的组件之一。高转换率是DC电源模块最重要的性能之一,它直接影响着电源的效率、功耗和发热等方面,因此也深受设计师的关注。高转换率是指在电源模块进行DC转换......
  • Contest1319 - 期末习题汇总(二) 计算机基础---进制转换相关
    题目描述将十进制的1234输出将八进制的1234对应其十进制数进行输出将十六进制的1234对应其十进制数进行输出输入无输出1234D=1234D1234O=668D1234H=4660D样例输出1234D=1234D1234O=668D1234H=4660D 代码:#include<iostream>#include<iomanip>usingnamespacestd;in......