V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
iXingo
V2EX  ›  程序员

122455 组成六位数字,比 300000 大的自然数有多少

  •  
  •   iXingo ·
    iXingo · 2020-12-18 11:55:10 +08:00 · 2081 次点击
    这是一个创建于 1461 天前的主题,其中的信息可能已经有所发展或是发生改变。
    9 条回复    2021-01-06 18:36:34 +08:00
    301
        1
    301  
       2020-12-18 12:33:57 +08:00 via Android
    有一半
    sirnay
        2
    sirnay  
       2020-12-18 12:34:43 +08:00
    [554221 545221 455221 552421 525421 542521 452521 524521 425521 552241 525241 522541 542251 452251 524251 425251 522451 422551 554212 545212 455212 552412 525412 542512 452512 524512 425512 554122 545122 455122 551422 515422 541522 451522 514522 415522 552142 525142 551242 515242 521542 512542 542152 452152 524152 425152 541252 451252 514252 415252 521452 512452 421552 412552 552214 525214 522514 552124 525124 551224 515224 521524 512524 522154 521254 512254 542215 452215 524215 425215 522415 422515 542125 452125 524125 425125 541225 451225 514225 415225 521425 512425 421525 412525 522145 521245 512245 422155 421255 412255]
    sirnay
        3
    sirnay  
       2020-12-18 12:35:30 +08:00
    func permuteUnique(nums []int) (ans int) {
    sort.Ints(nums)
    n := len(nums)
    perm := []int{}
    vis := make([]bool, n)

    r := make([]int, 0)
    var backtrack func(int)
    backtrack = func(idx int) {
    if idx == n {
    tmp := make([]int, len(perm))
    copy(tmp, perm)

    sum := 0
    for i := 0; i < len(perm); i++ {
    sum += tmp[i] * int(math.Pow10(i))
    }

    if sum > 300000 {
    ans++
    r = append(r, sum)
    }

    return
    }
    for i, v := range nums {
    //
    if vis[i] || i > 0 && !vis[i-1] && v == nums[i-1] {
    continue
    }
    perm = append(perm, v)
    vis[i] = true
    backtrack(idx + 1)
    vis[i] = false
    perm = perm[:len(perm)-1]
    }
    }
    backtrack(0)
    return
    }
    sirnay
        4
    sirnay  
       2020-12-18 12:36:48 +08:00
    https://leetcode-cn.com/problems/permutations-ii/

    算是这个题目的变形吧。
    Inn0Vat10n
        5
    Inn0Vat10n  
       2020-12-18 12:38:38 +08:00   ❤️ 1
    A(6,6)/2/2/2=90
    dustinth
        6
    dustinth  
       2020-12-18 12:43:57 +08:00
    C(3, 1) * C(5, 5) / 4 = 90
    ArtsXiaoLu
        7
    ArtsXiaoLu  
       2020-12-18 12:57:17 +08:00
    http://www.ab126.com/shuxue/1641.html
    这问题找李永乐回答合适
    bankroft
        8
    bankroft  
       2020-12-18 13:10:24 +08:00
    C(3,1)*P(5,5)/(P(2,2)^2)
    iXingo
        9
    iXingo  
    OP
       2021-01-06 18:36:34 +08:00
    谢谢诸位老铁
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1017 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 20:47 · PVG 04:47 · LAX 12:47 · JFK 15:47
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.