【蓝桥杯】2的次幂表示

题目:
样例输入
137
样例输出
2(2(2)+2+2(0))+2(2+2(0))+2(0)
样例输入
1315
样例输出
2(2(2+2(0))+2)+2(2(2+2(0)))+2(2(2)+2(0))+2+2
代码:
#include<stdio.h>
void getAns(int num,int m);
int main(){
	int num;
	scanf("%d",&num);
	getAns(num,0);
}
void getAns(int num,int m){
	if(num==0) return ;
	getAns(num/2,m+1);
	if(num%2==1){
		if(num!=1) printf("+");
		if(m==0) printf("2(0)");
		else if(m==1) printf("2(1)");
		else{
		 printf("2(");
		 getAns(m,0);
		 printf(")");	
		}  
	}
}
 
 
 

猜你喜欢

转载自blog.csdn.net/wanttobem/article/details/78846218
今日推荐