http://ac.jobdu.com/problem.php?pid=1095 2的幂次方

//手动模拟
#include<iostream>
#include<string>
#include<cstdio>
using namespace std;int main(void)
{int j,n,flag,m;int binary[15]={1,2,4,8,16,32,64,128,256,512,1024,2048,4096,8192,16384};string str[20001];str[1]="2(0)";str[2]="2";for(n=3;n<20001;n++){flag=0,m=n;for(j=14;j>=0;j--){if(binary[j]>n)continue;else if(binary[j]==n){str[n]+="2(";str[n]+=str[j];str[n]+=")";break;}else{if(m>=binary[j]){m-=binary[j];if(flag)str[n]+="+";str[n]+=str[binary[j]];flag=1;}}}}while(scanf("%d",&n)!=EOF){cout<<str[n]<<endl;}return 0;
}

方法二:

//递归
#include<iostream>
#include<string>
#include<cstdio>
using namespace std;void dfs(int n)
{int i=0,binary[15];bool add;if(n==0){printf("0");return ;}else if(n==1){printf("2");return ;}while(n){if(n&1)binary[i++]=1;elsebinary[i++]=0;n>>=1;}add=false,i--;for(;i>=0;i--){if(binary[i]){if(add)printf("+");if(i>=2){printf("2(");dfs(i);printf(")");}else if(i==1)printf("2");else if(i==0)printf("2(0)");add=true;}}
}
int main(void)
{int n;while(scanf("%d",&n)!=EOF){dfs(n);printf("\n");}return 0;
}

2006年上海交通大学计算机研究生机试真题相关推荐

  1. 211大学计算机复试不机试,复试机试之上海交通大学计算机研究生机试真题.doc...

    复试机试之上海交通大学计算机研究生机试真题 (你自己回去改格式啊,这个有多重繁杂字体,你自己改好看点~~还有知识05年到11年的)复试机试之2011年上海交通大学计算机研究生机试真题 (2012-02 ...

  2. 上海交大研究生计算机考研真题,2011年上海交通大学计算机研究生机试真题

    Oracle 约束(constraint)的几个参数的小研究 ORACLE中,约束分deferred 跟 immediate 2种: deferred:如果 Oracle 在事务提交(commit)时 ...

  3. 2005年上海交通大学计算机研究生机试真题

    http://ac.jobdu.com/problem.php?pid=1090   路径打印 #include<iostream> #include<set> #includ ...

  4. 2011年上海交通大学计算机研究生机试真题

    http://ac.jobdu.com/problem.php?pid=1103 二次方程计算器 #include<iostream> #include<cstdio> #in ...

  5. 2000年华中科技大学计算机研究生机试真题 对称矩阵

    题目1180:对称矩阵 时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:2518 解决:1295 题目描述: 输入一个N维矩阵,判断是否对称. 输入: 输入第一行包括一个数:N(1<= ...

  6. 2006年清华大学计算机研究生机试真题

    http://ac.jobdu.com/problem.php?pid=1078 二叉树遍历 #include<stdio.h> #include<string.h>//二叉树 ...

  7. [高精度整数] N的阶乘 [2006年清华大学计算机研究生机试真题]

    题目描述: 输入一个正整数N,输出N的阶乘. 输入描述: 正整数N(0<=N<=1000) 输出描述: 输入可能包括多组数据,对于每一组输入数据,输出N的阶乘 样例输入: 4 5 15 样 ...

  8. 2008--2009年北京航空航天大学计算机研究生机试真题

    http://ac.jobdu.com/problem.php?pid=1165 字符串匹配 #include<iostream> #include<cstdio> #incl ...

  9. 2011年北京大学计算机研究生机试真题(dijkstra+优先队列)

    http://ac.jobdu.com/problem.php?pid=1162  I Wanna Go Home 方法一:普通的dijkstra /* 很明显的最短路,但关键是如何建图.可以看到,一 ...

最新文章

  1. mysql文件怎么导入_mysql怎么导入sql文件
  2. JAVA蘑菇西餐,蘑菇的22种西餐做法,简单易上手,让你品尝不一样的风味
  3. 技术选型:为什么批处理我们却选择了Flink
  4. Jquery实现简单图片切换
  5. 在PPT中,用好PNG图片素材,免抠才是王道
  6. vissim4.3安装教程
  7. 微信小程序开源demo汇总
  8. SuperMap iClient3D for WebGL实现三维管线分析
  9. 卡方检定、fisher精确检定
  10. 进化树构建的方法原理及检验
  11. Cocos Create 3.3 打包安卓apk
  12. 【数据结构与算法】- 排序(算法)
  13. 0xC0000005:读取位置0x00000000时发生访问冲突
  14. idea Push Tags选All还是Current Branch?
  15. 基于深度强化学习的智能船舶航迹跟踪控制
  16. Base64编解码工具
  17. vue 避免全局样式污染的正确做法
  18. Linux命令_Note1
  19. MySQL数据库密码配置
  20. 超强跑得快机器人智能算法深度研究与设计

热门文章

  1. 树状数组 java_算法模板之树状数组
  2. 阿里云数据中台全新产品DataTrust聚焦企业数据安全保障
  3. 算法专家解读 | 开放搜索教育搜题能力和实践
  4. 618 大促背后的淘系前端技术体系
  5. 《赛博朋克2077》是如何将人物表情和口型本地化的?
  6. 游戏编程设计模式——Game Loop
  7. Git下载与使用(Git地址由CSDN提供)
  8. 【蓝桥杯Java_C组·从零开始卷】第六节(一)、Java常用数学函数
  9. 利用DBMS_FILE_TRANSFER传输数据库文件
  10. ORA-01940:cannot drop a user that is currently connected