首页 > 其他 > 详细

哈工大机试 数字阶梯求和 Easy *注意字符串+字符串补零快一点

时间:2020-03-12 09:19:45      阅读:75      评论:0      收藏:0      [点我收藏+]

基本思想:

无;

 

关键点:

无;

 

#include<string>
#include<vector>
#include<iostream>
#include<algorithm>
#include<math.h>
using namespace std;

void add(string& a, string b) {
	//补全0;
	if (a.size() < b.size()) {
		for (int i = b.size() - a.size(); i > 0; i--) {
			a.push_back(‘0‘);
		}
	}
	else {
		for (int i = a.size() - b.size(); i > 0; i--) {
			b.push_back(‘0‘);
		}
	}
	//开始计算;
	int carry = 0;
	for (int i = 0; i < a.size(); i++) {
		int temp = carry + (a[i] - ‘0‘) + (b[i] - ‘0‘);
		a[i] = temp % 10+‘0‘;
		carry = temp / 10;
	}
	if (carry != 0)
		a.push_back(‘1‘);
	//消除前导零;
	while (a.size() != 0 && a[a.size() - 1] == ‘0‘)
		a.pop_back();
}

int main() {
	char c;
	int b;
	while (cin >> c >> b) {
		string s = "";
		string res = "0";
		for (int i = 0; i < b; i++) {
			s += c;
			add(res, s);
		}
		reverse(res.begin(), res.end());
		cout << res << endl;
	}
}

  

哈工大机试 数字阶梯求和 Easy *注意字符串+字符串补零快一点

原文:https://www.cnblogs.com/songlinxuan/p/12466725.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!