acgo题库
  • 首页
  • 题库
  • 学习
  • 天梯
  • 备赛

    竞赛

    • CSP-J/S
    • 蓝桥杯

    考级

    • GESP
    • CPA
    • 电子学会考级
  • 竞赛
  • 讨论
  • 团队
  • 商城
登录
注册
题目详情提交记录(0)
  • 题解(有解析)

    对于N的子集,每个数我们都可以取或者不取, 如果不取1,会有2^(n-1)种方法在“不取1时”的前面, 就是有2^(n-1)种方法比“不取1时”小, 所以当k>2^(n-1)时,不取第一个数, k-=pow(2,n-i),再考虑取不取2,我们发现: 如果不取i,会多2^(n-i)种方法比“不取i时” 小 所以,当k<=2(n-i)时,我们只能取i,因为如果不取就会多2(n-i)种方法比不取i时小 但这时我们要k - - ,因为还有一种就是不取i且之后所有都不取的情况。 然后k<2^n的,所以并不会炸int,上代码:

    userId_undefined
    喵仔牛奶
    11月全勤卷王12月全勤卷王小有名气题解仙人快乐小狗GESP5级
    1阅读
    0回复
    1点赞
暂无数据

提交答案之后,这里将显示提交结果~

首页