求助——一关
  • 板块学术版
  • 楼主Chalage_2010
  • 当前回复7
  • 已保存回复7
  • 发布时间2022/11/6 15:11
  • 上次更新2023/10/27 04:03:28
查看原帖
求助——一关
760690
Chalage_2010楼主2022/11/6 15:11

题目描述

时间:1s   空间:128M

 

题目描述:

今天小Y学会了进制转换,比如(10101)2 ,那么它的十进制表示的式子就是 :

1*2^4+0*2^3+1*2^2+0*2^1+1*2^0,

那么请你编程实现,将一个M进制的数N转换成十进制表示的式子。

注意:当系数为0时,该单项式要省略。

 

输入格式:

两个数,M和N,中间用空格隔开。

输出格式:

共一行,一个十进制表示的式子。

 

样例输入1:

2 10101

样例输出1:

1*2^4+1*2^2+1*2^0

 

 

约定:

对于100%的数据,1

我的代码

#include<bits/stdc++.h> 
using namespace std;
int m,n1[1000]={};
string n;
int main()
{
	cin>>m>>n;
	int a=n.size()-1;
	while(a+1)
	{
		if(n[a]>='0' && n[a]<='9') n1[a]=n[a]-'0';
		else n1[a]=n[a]-55;
		a--;
	}
	a=n.size()-1;
	cout<<n1[a]<<"*"<<m<<"^"<<a;
	a--;
	while(a+1)
	{
		if(n1[a]!=0)
		{ 
			cout<<"+"<<n1[a]<<"*"<<m<<"^"<<a;
		}
		a--;
	}
	return 0;
}

请各位看看有什么问题

2022/11/6 15:11
加载中...