• 博客园logo
  • 会员
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • HarmonyOS
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

cynchanpin

  • 博客园
  • 联系
  • 订阅
  • 管理

View Post

【日常学习】【搜索/递归】codevs2802 二的幂次方题解


转载请注明出处 [ametake版权全部]http://blog.csdn.net/ametake欢迎来看 

题目描写叙述 Description

不论什么一个正整数都能够用2的幂次方表示.
比如:137=2^7+2^3+2^0
同一时候约定次方用括号来表示,即a^b可表示为a(b)
由此可知,137可表示为:2(7)+2(3)+2(0)
进一步:7=2^2+2+2^0 (2^1用2表示)
3=2+2^0
所以最后137可表示为:2(2(2)+2+2(0))+2(2+2(0))+2(0)
又如:1315=2^10+2^8+2^5+2+1
所以1315最后可表示为:2(2(2+2(0))+2)+2(2(2+2(0)))+2(2(2)+2(0))+2+2(0)

输入描写叙述 Input Description

正整数n

输出描写叙述 Output Description

符合约定的n的0,2表示(在表示中不能有空格)

例子输入 Sample Input

【输入例子1】
137
【输入例子2】
1315

例子输出 Sample Output

【输出例子1】
2(2(2)+2+2(0))+2(2+2(0))+2(0)
【输出例子2】
2(2(2+2(0))+2)+2(2(2+2(0)))+2(2(2)+2(0))+2+2(0)

数据范围及提示 Data Size & Hint

n为2的指数<=1100586419200

典型的递归题 非常久没写搜索我都不会写了 感谢显摆点拨~

直接上代码一看就懂 

关键是先输出左括号,递归,输出右括号 这样的经典格局

还有其它方法 里奥的lowbit啊什么的= =慢慢学

注意要用long long 吐槽4.9.9.2悲了个剧的编译器 和codevs奇怪的编译原理= =

上代码 



——旧赏轻抛,到此成游宦

posted on 2017-07-01 21:21  cynchanpin  阅读(300)  评论(0)    收藏  举报

刷新页面返回顶部
 
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3