PAT (Basic Level) 1022 D进制的A+B

题意

给定十进制下的A和B,求D进制下的A + B

思路

同十进制二进制的转换,模拟即可。要特判一下A + B == 0的情况

代码

#include <bits/stdc++.h>
using namespace std;
struct cake {
	double num, val;
};
int main() {
	ios::sync_with_stdio(false);
	cin.tie(nullptr);
	cout.tie(nullptr);
	int a, b, d;
	cin >> a >> b >> d;
	int sum = a + b;
	vector<int> ans;
	while (sum) {
		ans.push_back(sum % d);
		sum /= d;
	}
	if (ans.size() == 0) ans.push_back(0);
	reverse(ans.begin(), ans.end());
	for (auto e : ans) cout << e;
	cout << '\n';
	return 0;
} 	

HINT

不定时更新更多题解,Basic Level 全部AC代码,详见 link ! ! !

发布了31 篇原创文章 · 获赞 15 · 访问量 759

猜你喜欢

转载自blog.csdn.net/abcdefbrhdb/article/details/104564772