标签:
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(0)
1 #include<stdio.h> 2 3 void power(int n) 4 { 5 int a[10]; 6 int num = 0, i; 7 for (i = 0; n; i++, n /= 2) 8 { 9 if(n % 2 == 1) 10 { 11 a[num++] = i; 12 } 13 } 14 for (i = num - 1; i >= 0; i--) 15 { 16 switch(a[i]) 17 { 18 case 0: 19 printf("2(0)"); 20 break; 21 case 1: 22 printf("2"); 23 break; 24 case 2: 25 printf("2(2)"); 26 break; 27 default: 28 printf("2("); 29 power(a[i]); 30 printf(")"); 31 } 32 if(i != 0) 33 { 34 printf("+"); 35 } 36 } 37 } 38 39 int main() 40 { 41 int n; 42 scanf("%d", &n); 43 power(n); 44 return 0; 45 }
标签:
原文地址:http://www.cnblogs.com/maxin/p/5510233.html