题目描述
今天小明学会了进制转换,比如(10101)2 ,那么它的十进制表示的式子就是 :
124+0*23+122+0*21+1*2^0,
那么请你编程实现,将一个M进制的数N转换成十进制表示的式子。
注意:当系数为0时,该单项式要省略。
输入格式
两个数,M和N,中间用空格隔开。
输出格式
共一行,一个十进制表示的式子。
输入输出样例
输入 #1
2 10101
输出 #1
124+1*22+12^0
说明/提示
对于100%的数据,1<M<10,N的位数不超过1000。
题解
不是一定要将字符串连起来再输出
上代码
package qwx.luogu;
import java.util.Scanner;
//10000
public class jinzhizhuanuan {
public static void main(String[] args) {
Scanner scanner=new Scanner(System.in);
int m=scanner.nextInt();
String n=scanner.next();
int len=n.length();
for(int i=0;i<len;i++){
if(i!=0 && n.charAt(i)!='0'){
System.out.print("+");
}
if(n.charAt(i)!='0'){
System.out.print(n.charAt(i)+"*"+m+"^"+(len-i-1));
}
}
}
}
写了好久。cai