为有牺牲多壮志,敢教日月换新天。

HJ9 提取不重复的整数

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公众号:山青咏芝
➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/ )
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址:https://www.cnblogs.com/strengthen/p/15553347.html
➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★

热烈欢迎,请直接点击!!!

进入博主App Store主页,下载使用各个作品!!!

注:博主将坚持每月上线一个新app!!!

描述

输入一个 int 型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。
保证输入的整数最后一位不是 0 。
 
数据范围: 

输入描述:

输入一个int型整数

输出描述:

按照从右向左的阅读顺序,返回一个不含重复数字的新的整数

示例1

输入:
9876673
输出:
37689
while let line = readLine(), let num = Int(line) {
    var vals = Set<Int>()
    var k = num
    while k > 0 {
        let val = k%10
        if !vals.contains(val) {
            vals.insert(val)
            print("\(val)", terminator: "")
        }
        k /= 10
    }
}
import Foundation

while let line = readLine() {
    if var inputNum = Int(line) {
        var resultArr: [Int] = []

        while true {
            let value = inputNum % 10
            resultArr.append(value)
            
            inputNum = inputNum / 10
            if inputNum == 0 {
                break
            }
        }
        
        // remove duplicated values
        var resultSet: Set<Int> = Set()
        
        var uniquearr = resultArr.filter({ va in
            if resultSet.contains(va) {
                return false
            } else {
                resultSet.insert(va)
                return true
            }          
        })
        
        var result: Int = 0
        for i in uniquearr {
            result = result * 10 + i   
        }
        print(result)
    }
}
func test() {
    if let a = readLine() {
        var n = 0
        var map: [Int: Bool?] = [:]
        for i in a.reversed() {
            let index = Int(String.init(i))!
            if let _ = map[index] {
                
            } else {
                map[index] = true
                n = n*10 + index
            }
        }
        print(n)
    }
}

test()

 

posted @ 2021-11-14 21:08  为敢技术  阅读(324)  评论(0编辑  收藏  举报