问题描述
任何一个正整数都可以用2的幂次方表示。例如:
137=27+23+20
同时约定方次用括号来表示,即ab 可表示为a(b)。
由此可知,137可表示为:
2(7)+2(3)+2(0)
进一步:7= 22+2+20 (21用2表示)
3=2+20
所以最后137可表示为:
2(2(2)+2+2(0))+2(2+2(0))+2(0)
又如:
1315=210 +28 +25 +2+1
所以1315最后可表示为:
2(2(2+2(0))+2)+2(2(2+2(0)))+2(2(2)+2(0))+2+2(0)

输入格式
输入包含一个正整数N(N<=20000),为要求分解的整数。
输出格式
程序输出包含一行字符串,为符合约定的n的0,2表示(在表示中不能有空格)

package algo12;import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner in = new Scanner(System.in);int n = in.nextInt();in.close();div(n);}private static void div(int n) {if (n == 0) {System.out.print(0);return;}char[] cs = Integer.toBinaryString(n).toCharArray();boolean isOutputFirst = false;for (int i = 0; i < cs.length; i++) {if (cs[i] == '1') {if (isOutputFirst) {if (cs.length - i - 1 == 1) {System.out.print("+2");} else {System.out.print("+2(");div(cs.length - 1 - i);System.out.print(")");}} else {if (cs.length - i - 1 == 1) {System.out.print(2);} else {System.out.print("2(");div(cs.length - 1 - i);System.out.print(")");}isOutputFirst = true;}}}}
}

[Java] 蓝桥杯ALGO-12 算法训练 幂方分解相关推荐

  1. 蓝桥杯试题 算法训练 幂方分解

    试题 算法训练 幂方分解 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 任何一个正整数都可以用2的幂次方表示.例如: 137=27+23+20 同时约定方次用括号来表示,即ab 可 ...

  2. 蓝桥杯 ALGO-12 算法训练 幂方分解

    问题描述 任何一个正整数都可以用2的幂次方表示.例如: 137=27+23+20 同时约定方次用括号来表示,即ab 可表示为a(b). 由此可知,137可表示为: 2(7)+2(3)+2(0) 进一步 ...

  3. 蓝桥杯:试题 算法训练 Remember the A La Mode

    蓝桥杯:试题 算法训练 Remember the A La Mode 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述 Hugh Samston经营着一个为今年的ICPC世界总决赛的参 ...

  4. 矩阵乘法 算法训练 试题_蓝桥杯习题集_ 算法训练 矩阵乘法

    原文: 算法训练 矩阵乘法 时间限制:1.0s   内存限制:512.0MB 问题描述 输入两个矩阵,分别是m*s,s*n大小.输出两个矩阵相乘的结果. 输入格式 第一行,空格隔开的三个正整数m,s, ...

  5. java蓝桥杯的题_Java蓝桥杯试题集——算法训练ALGO-116——最大的算式

    题目要求 解题思路 动态规划,今天才弄明白QAQ,借鉴了这位大佬的博客,曹磊的博客 写的很好!但是我觉得我的循环方式更容易理解嘿嘿嘿~ 首先建立如下图的数组,行数代表前几位数,列数代表有几个乘号.将第 ...

  6. 蓝桥杯练习系统算法训练习题加答案java版本

    附上百度文库的链接:http://wenku.baidu.com/view/afb78d36b42acfc789eb172ded630b1c59ee9bf7 转载于:https://www.cnblo ...

  7. JAVA蓝桥杯:高精度算法

    问题描述 问题描述 输入两个整数a和b,输出这两个整数的和.a和b都不超过100位. 算法描述 由于a和b都比较大,所以不能直接使用语言中的标准数据类型来存储.对于这种问题,一般使用数组来处理. 定义 ...

  8. 蓝桥杯:试题 算法训练 采油区域 矩阵前缀和+动态规划+分治+枚举

    资源限制 时间限制:2.0s 内存限制:512.0MB 采油区域 Siruseri政府决定将石油资源丰富的Navalur省的土地拍卖给私人承包商以建立油井.被拍卖的整块土地为一个矩形区域,被划分为M× ...

  9. 蓝桥杯-黑色星期五(算法训练)

    题目描述: 有些西方人比较迷信,如果某个月的13号正好是星期五,他们就会觉得不太吉利,用古人的说法,就是"诸事不宜".请你编写一个程序,统计出在某个特定的年份中,出现了多少次既是1 ...

最新文章

  1. 技术图文:02 创建型设计模式(下)
  2. 开源项目-基于Intel VT技术的Linux内核调试器
  3. 运动控制器编程_快速入门 | 篇二十一:运动控制器ZHMI组态编程简介一
  4. 将军令:数据安全平台建设实践
  5. 每天学习一点,坚持学习!!
  6. 使用jdbc执行SQL实现登录查询2-避免SQL注入版
  7. python作业不会做怎么办_不学点编程,将来怎么给孩子辅导作业——Python新手入门教程...
  8. 设计模式在项目中的应用案例_项目化学习案例(五):菊花种植的秘密——项目化学习在菊种植课程中的应用设计案例...
  9. 大数据城市规划 杨东_AI为智慧城市规划做建设
  10. python多进程调试_使用pyrasite进行python进程调试,改变运行中进程的代码
  11. 下滑加载更多js_jquery实现移动端下拉加载更多
  12. Pascal VOC2011落下帷幕
  13. atitit.软件开发--socket框架选型--netty vs mina j
  14. java json web token_一分钟简单了解JSON Web Token
  15. 数学建模优化模型简单例题_10次数学建模积累下的经验,希望能对你有所帮助!...
  16. 斗鱼password加密参数调试生成案例
  17. python加粗线宽代码_python-增加matplotlib中图例行的线宽
  18. Multiprocessing 学会多进程 (莫烦 Python 教程)笔记-4-进程池pool
  19. EasyPusher手机直播推送是如何实现后台直播推送的
  20. 【校招笔试】网易校招网络笔试题,菜的抠脚,蠢的流泪

热门文章

  1. html透明度_iMac下制作含透明度图片及判断图片透明度
  2. python如何识别中文_python如何识别图片中的文字
  3. Android中应用程序drawable图片资源占用内存的统计
  4. iPhone开发之@Class与#import的区别
  5. position_css
  6. java判断字符串是否为乱码
  7. REX-Ray 了解
  8. CSS网页布局垂直居中整理
  9. 用友u8数据库表结构
  10. 使用 imitator 实现前后端分离开发中的数据模拟与静态资源映射