本地全过,自己也弄了很多样例上去测,0分,实在不懂了
查看原帖
本地全过,自己也弄了很多样例上去测,0分,实在不懂了
327580
rand_everything楼主2022/7/16 11:56
#include <iostream>
#include <cstring>
#include <cmath>
using namespace std;
int eight_turn_ten(string a){
	int ans,k;
	for(int i = a.length() - 1;i >= 0;i--){
		if(48 <= a[i] && a[i] <= 57) k = a[i] - 48;
		else k = a[i] - 55;
		ans += k * pow(8,a.length() - i - 1);
	}
	return ans;
}
void ten_turn_sixteen(int n){
	int ans[10000],cnt = 0;
	while(n){
		ans[cnt] = n % 16;
		n /= 16;
		cnt++;
	}
	for(int i = cnt - 1;i >= 0;i--){
		if(ans[i] < 10) cout << ans[i];
		else{
			char a;
			a = ans[i] + 87;
			cout << a;
		}
	}
}
int main(){
	string s;
	cin >> s;
	for(int i = 0;i <= s.length();i += 10){
		ten_turn_sixteen(eight_turn_ten(s.substr(i,10)));
	}
	return 0;
}
2022/7/16 11:56
加载中...