help
查看原帖
help
1308091
qfmy_wyh楼主2025/6/15 20:24
#include<bits/stdc++.h>
using namespace std;


int a;//x进制 
string b;//输入需转化数 
vector <int> s;//转化前的数组 
vector <int> sum;//编号 +存储 
int j;

int f(int x) {//转化 
	x=s[j];
	int r;
	sum[j] = pow(sum[j],a) * s[j];
}


int main(){
	int i;
	
    cin>>a;
    cin>>b;
    
    if (a = 10) cout<<b;return 0;//特判无需转换 
    if (a > 10) {//十进制以上预处理 
    	for (i=0;i<b.size();i++) {
    		sum.push_back(i);//储存编号 
    		if (b[i] >= '0' && b[i] <= '9')  
    			s.push_back(b[i] - '0');
    		else 
				s.push_back(b[i] - 'A' + 10);
		}
		reverse(s.begin(),s.end());//反转与编号对应
		 
	}else{//十进制以下 
		for (i=0;i<=b.size();i++) {
			sum.push_back(i);
			s.push_back(b[i] - '0');
		}
		reverse(s.begin(),s.end());//反转与编号对应
	}
	
	//转换 
	
	for (j=0;j<s.size();j++) {
		f(0);
		cout<<sum[j];
	}
	return 0;
}
2025/6/15 20:24
加载中...